LINUX.ORG.RU

История изменений

Исправление alysnix, (текущая версия) :

а в чем «преимущество»??

вы ясночитаемый код превратили в две функции(зачем тут лишняя функция?), причем количество параметров функции handle по сути ничем не ограничено, это зависит от исходной сложности задачи(может там 100 ресурсов возникает? и их надо передать в handle)..

вы положили на инкапсуляцию - зачем вытаскивать из исходной функции реализацию наружу?

вы не показали общее решение - а если таких блоков(которые надо завершить нетривиально) внутри функции много?

то есть вы показали решение для частного случая, простейшего, который я привел, в надежде, что читатель сможет усилить пример самостоятельно.

вам нужен пример функции, где таких блоков с нетривиальным завершением например 5-10, часть из них вложенные, и семантика там сложная(чтобы список параметров ваших handle медом не казался).

а на вопрос - ну и зачем писать всю запутанную эту мутоту? - ответ только один… а чтобы удовлетворить формальному, неизвестно откуда взятому правилу, что goto это плохо…

да выкиньте вы это правило в помойку. goto хорошо, когда оно помогает компактности и читаемости кода.

Исходная версия alysnix, :

а в чем «преимущество»??

вы ясночитаемый код превратили в две функции(зачем тут вообще лищняя функция?), причем количество параметров функции handle по сути ничем не ограничено, это зависит от исходной сложности задачи(может там 100 ресурсов возникает? и их надо передать в handle)..

вы положили на инкапсуляцию - зачем вообще вытаскивать из исходной функции реализацию наружу?

вы не показали общее решение - а если таких блоков(которые надо завершить нетривиально) внутри функции много?

то есть вы показали решение для частного случая, простейшего, который я привел, в надежде, что читатель сможет усилить пример самостоятельно.

вам нужен пример функции, где таких блоков с нетривиальным завершением например 5-10, часть из них вложенные, и семантика там сложная(чтобы список параметров ваших handle медом не казался).

а на вопрос - ну и зачем писать всю запутанную эту мутоту? - ответ только один… а чтобы удовлетворить формальному, неизвестно откуда взятому правилу, что goto это плохо…

да выкиньте вы это правило в помойку. goto хорошо, когда оно помогает компактности и читаемости кода.