История изменений
Исправление KennyMinigun, (текущая версия) :
Всё логично, нет?
Нет. Непонятно зачем после метки писать пустой стейтмент. Т.е. с точнки зрения стандарта уже растолковали мне выше, а вот с точки зрения логики — нет.
Вот насколько сложно понять куда пойдёт ход программы после прыжка на метку? Да элементарно: вниз по коду. Конечно, если изменят стандарт и позволят писать метки без стейтмента, то можно будет сделать что-то такое:
int function() {
int result = 0;
// bla-bla-bla
if (isProgrammerStupid)
goto ASS;
// bla-bla-bla
return result;
ASS:
}
Но как это сродни прыжкам внутрь цикла без инициализации условия выхода.
Исправление KennyMinigun, :
Всё логично, нет?
Нет. Непонятно зачем после метки писать пустой стейтмент. Т.е. с точнки зрения стандарта уже растолковали мне выше, а вот с точки зрения логики — нет.
Вот насколько сложно понять куда пойдёт ход программы после прыжка на метку? Да элементарно: вниз по коду. Конечно, если изменят стандарт и позволят писать метки без стейтмента, то можно будет сделать что-то такое:
int function() {
int result = 0;
// bla-bla-bla
if (isProgrammerStupid)
goto ASS;
// bla-bla-bla
return result;
ASS:
}
Но как это сродни прыжкам внутрь цикла без инициализации условия выхода.
Исходная версия KennyMinigun, :
Всё логично, нет?
Нет. Непонятно зачем после метки писать пустой стейтмент. Т.е. с точнки зрения стандарта уже растолковали мне выше, а вот с точки зрения логики — нет.
Вот насколько сложно понять куда пойдёт ход программы после прыжка на метку? Да элементарно: вниз по коду. Конечно, если изменят стандарт и позволят писать метки без стейтмента, то можно будет сделать что-то такое:
int function() {
int result = 0;
// bla-bla-bla
if (isProgrammerStupid)
goto ASS;
// bla-bla-bla
return result;
ASS:
}
Но как это сродни прыжкам внутрь цикла без инициализации условия выхода.