Это выглядит хорошо для меня.Я не вижу в этом ничего плохого.Если бы мне пришлось придираться, это было бы твоим форматированием и отступом ... Но это как раз об этом.
РЕДАКТИРОВАТЬ: Я думаю, что пост, о котором ты говорил, означал, что ты не можешь вернуть адреслокальной или автоматической переменной.В этом примере все находится в одной области видимости, поэтому все отлично.
РЕДАКТИРОВАТЬ 2: Хорошо, возвращаясь к предыдущему опыту, я думаю, что я могу найти "некоторые" слабости в коде.Я видел это на компиляторе Intel.
Поскольку переменная является локальной, компилятор может преобразовать ее в регистр.В таком случае обращения к нему недействительны.Однако современные компиляторы должны иметь возможность отслеживать эту зависимость и избегать помещения этой переменной в регистр.
В одном случае, с которым я столкнулся некоторое время назад, я обращался к адресу переменной через встроенную сборку - что-точто компилятор Intel не смог отследить.Затем компилятор выдвинул переменную для регистрации, и моя встроенная сборка продолжала читать старое значение в стеке, а не значение регистра.
Очевидно, это было то, чего я не должен был делать, но было бы хорошо, если быпеременная не была автоматической.