Как вы называете свои метки GoTo? Я часто использую редко, поэтому мне трудно найти хорошие имена.Соглашения об именах для ярлыков GoTo
Пожалуйста, воздержитесь от классических «Гото зла и есть код живых дискуссий»
Как вы называете свои метки GoTo? Я часто использую редко, поэтому мне трудно найти хорошие имена.Соглашения об именах для ярлыков GoTo
Пожалуйста, воздержитесь от классических «Гото зла и есть код живых дискуссий»
Мои имена меток почти всегда попадают в одну из этих моделей:
В пакетных файлах я часто использую HELL.
Как:
some_command || GOTO HELL
...
HELL:
echo "Ouch, Hot!"
Я обычно это нужно только для 2-х случаев. Таким образом, мои метки goto либо начинаются, либо наконец.
В Fortran, я использую Гото для откатов, и я обычно начинаю с 999 в обратном направлении (в фортраном Гото метки только числовые)
call foo(err)
if (err /= 0) goto 999
call bar(err)
if (err /= 0) goto 998
call baz(err)
if (err /= 0) goto 997
! everything fine
error = 0
return
997 call undo_bar()
998 call undo_foo()
999 error = 1
return
Я также использовать этикетки больше, чем 1000, если по какой-то причине я хочу чтобы пропустить часть отката.
В C и на других языках я бы использовал rollbacknumber (например rollback1, rollback2), так что с этикетки видно, что вы собираетесь откатываться. Это, по сути, единственная хорошая причина для использования goto.
Разве это не зависит от того, для чего они используются? Я предпочитаю называть * каждый * идентификатор после чего-то значимого в контексте, который они используют. Конечно, рассказывая нам, где вы их используете, может открыться для обсуждения того, что вы могли бы использовать вместо gotos. Везет, как утопленнику. :) – jalf
Я бы также утверждал, что если вам требуется соглашение об именах, это звучит так, будто вы их используете. ;) – jalf