Re[2]: Эксепшн из деструктора
От: Тот кто сидит в пруду Россия  
Дата: 23.11.11 13:03
Оценка: +1
Здравствуйте, XuMuK, Вы писали:

А>>Недавно на собеседовании спросили, почему нельзя кидать исключение из деструктора. А, собственно, почему? Накидал в 2005-й студии тестовый код, вроде все нормально отработало.


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


Чоэто вдруг неопределенное? std::terminate() — очень даже определенное поведение.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.