Я выглядел как finally
для C ++, но я столкнулся с RAII . У меня небольшая путаница, хотя. Если у меня есть какой-то общий код, который я хочу запустить в случае какого-либо исключения,
Пример: std::cout << "exception occured" << std::endl;
Есть ли способ сделать это вместо копирования того же кода?
#include <iostream>
int main()
{
bool firstException = false;
try
{
if(firstException)
throw std::invalid_argument("the truth is out there!!");
else
throw std::domain_error("Bazzinga");
}
catch (std::invalid_argument const& e)
{
std::cout << e.what() << std::endl;
std::cout << "exception occured" << std::endl;
}
catch (std::domain_error const& e)
{
std::cout << e.what() << std::endl;
std::cout << "exception occured" << std::endl;
}
}