LINUX.ORG.RU

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

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

Исключение – это просто нелокальный goto. Со всеми вытекающими.

нелокальный goto просто некорректен, он даже локальный некорректен в общем случае, когда например перепрыгивает инициализацию какой-нить переменной.

это вообще не goto, а вызов цепочки завершателей блока и обработчиков исключений.

если делать просто goto - повиснут всякие указатели, не закроются всякие там файлы и программа придет в невосстановимое состояние. ее придется только аварийно завершить.

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

Исключение – это просто нелокальный goto. Со всеми вытекающими.

нелокальный goto просто некорректен, он даже локальный некорректен в общем случае, когда например перепрыгивает инициализацию какой-нить переменной.

это вообще не goto, а вызов цепочки завершателей блока и обработчиков прерываний.

если делать просто goto - повиснут всякие указатели, не закроются всякие там файлы и программа придет в невосстановимое состояние. ее придется только аварийно завершить.