Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
24
Определение вывода программы с исключениями в деструкторе
Условие задачи
Укажите, какой текст будет напечатан в консоль после выполнения следующего кода.
#include <iostream>
using namespace std;
struct explode_exception : public std::exception {};
struct top_exception : public std::exception {};
struct Explosive
{
~Explosive()
{
throw explode_exception();
}
};
int main()
{
try
{
Explosive explosive;
throw int(5);
}
catch (const std::exception&)
{
cout << "1";
// обработчик 1
}
catch (top_exception&)
{
cout << "2";
// обработчик 2
}
catch (explode_exception&)
{
cout << "3";
// обработчик 3
}
catch (int&)
{
cout << "4";
// обработчик 4
}
return 0;
}