История изменений
Исправление alysnix, (текущая версия) :
Это отложенный вызов. В итоге функция вызывается. Аргументы передаются при этом сразу. Это для удобства сделано, на семантику языка начхать, язык служит человеку.
не. это перегиб.
defer определяет statement(ну если действовать в традициях сиподобных язычков), который должен быть выполнен по выходу из текущего блока.
блок {…} это тоже стейтмент и называется блок стейментов.
то есть логично иметь правило
defer statement
куда подходит и
defer fun1(...)
и
defer {.....}
Исходная версия alysnix, :
Это отложенный вызов. В итоге функция вызывается. Аргументы передаются при этом сразу. Это для удобства сделано, на семантику языка начхать, язык служит человеку.
не. это перегиб.
defer определяет statement(ну если действовать в традициях сиподобных язычков), который должен быть выполнен по выходу из текущего блока.
блок {…} это тоже стейтмент и называется блок стейментов.
то есть логично иметь правило
defer statement;
куда подходит и
defer fun1(...)
и
defer {.....}