LINUX.ORG.RU

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

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

Это отложенный вызов. В итоге функция вызывается. Аргументы передаются при этом сразу. Это для удобства сделано, на семантику языка начхать, язык служит человеку.

не. это перегиб.

defer определяет statement(ну если действовать в традициях сиподобных язычков), который должен быть выполнен по выходу из текущего блока.

блок {…} это тоже стейтмент и называется блок стейментов.

то есть логично иметь правило

defer statement

куда подходит и

defer fun1(...)
и 
defer {.....}

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

Это отложенный вызов. В итоге функция вызывается. Аргументы передаются при этом сразу. Это для удобства сделано, на семантику языка начхать, язык служит человеку.

не. это перегиб.

defer определяет statement(ну если действовать в традициях сиподобных язычков), который должен быть выполнен по выходу из текущего блока.

блок {…} это тоже стейтмент и называется блок стейментов.

то есть логично иметь правило

defer statement;

куда подходит и

defer fun1(...)
и 
defer {.....}