История изменений
Исправление firkax, (текущая версия) :
Аргумент тут может быть только один - такой код намного читабельнее смотрится. Технических аргументов, разумеется, быть не может - компилятор умеет эти объявления собирать со всего тела функции перед тем как начать генерить её код. Но это не значит что надо мусорный код с перемешанными объявлениями с кодом писать.
Скрипты (перл питон пхп) это другое, не надо сравнивать. Го - изначально мусорный язык, тоже не в тему. В С++ это потому, что там объявление переменной-объекта неизбежно запускает конструктор, то есть объявление по факту императивно. Это, возможно, некоторая проблема дизайна языка, а может и нет, я на с++ не особо пишу, но что есть то есть.
Исходная версия firkax, :
Аргумент тут может быть только один - такой код намного читабельнее смотрится. Технических аргументов, разумеется, быть не может - компилятор умеет эти объявления собирать со всего тела функции перед тем как начать генерить её код. Но это не значит что надо мусорный код с перемешанными объявлениями с кодом писать.