Рассмотрим следующий код С++:
try {
throw foo(1);
} catch (foo &err) {
throw bar(2);
} catch (bar &err) {
// Will throw of bar(2) be caught here?
}
Я бы ожидал, что ответ будет отсутствовать, так как он не находится внутри блока try
, и я вижу в другом вопросе ответ для Java нет ответа, но вы хотите подтвердить, что С++ тоже нет. Да, я могу запустить тестовую программу, но мне хотелось бы знать определение языка поведения в удаленном случае, когда у моего компилятора есть ошибка.