Есть ли гарантии, что блок catch() поймать исключение, брошенное из деструктора, который был вызван при выходе из блока try?
Рассмотрим следующий код:
try
{
Object object;
// ...
}
catch (...)
{
// ...
}
Скажите, пожалуйста, что произойдет, если деструктор Object бросить исключение?
Будет ли считаться, что исключение возникло внутри блока try? Произойдет ли корректный перехват такого исключения блоком catch()? Что по этому поводу говорит Стандарт?
PS. Да, я знаю, что деструкторам не следует генерировать исключения, но все же.