Как стать автором
Обновить

Комментарии 4

goto в 21 веке? Я бы сделал развернутые блоки if и else.
Не вижу ничего плохого в goto, если это позволяет уменьшить размер кода и упростить читаемость. Но в принципе, это дело вкуса, поэтому я никого не принуждаю копипастить данный код)
Да и статья не про это)
Плохо тут то, что легко перепутать метку и вместо
goto PROCESS_LINK_DEREF;
сделать
goto EXIT_ROUTINE;
особенно, если отслеживается много ресурсов.

Другое дело, что большой уровень вложенности со сдвигом блоком вправо тоже смотрится не очень, заставляя при чтении кода скакать влево-вправо, а не идти по сценарию сверху вниз.
Ну. насчёт того, что перепутать метку не уверен,(названия функций же вроде не путают). Но даже если так, то можно сократить до 1 метки и использовать флаговые переменные, чтобы понимать, какие ресурсы нужно освобождать, а какие даже не выделились.
Думаю, тут уже, всё зависит от привычек программиста.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации