LINUX.ORG.RU

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

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

это вообще не то, кроме похожести «finally».

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

финализатор же блока, это лишь дополнительное ключевое слово и переход на финализатор(goto) при выходе из блока. у него конкретная задача - собрать в одном месте код, для корректного выхода из блока. это типа «деструктора» всего того, что в блоке создавалось, и как бы деструктор самого блока(если блок считать «обьектом» в стиле ооп).

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

это вообще не то, кроме похожести «finally».

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

финализатор же блока, это лишь дополнительное ключевое слово и переход на финализатор(goto) при выходе из блока. у него конкретная задача - собрать в одном месте код, для корректного выхода из блока. это типа «деструктора» всего того, что в блоке создавалось.