У меня есть фрагмент кода, в котором я вызываю rethrow_exception с аргументом nullptr. В документации сказано, что аргумент должен быть ненулевым, но я хочу знать, если я передам nullptr, поведение не определено или известно?
Я получаю bad_exception каждый раз. Однако эта ссылка говорит, что поведение не определено.
std::string msg;
try
{
std::rethrow_exception(nullptr);
}
catch (std::bad_exception &ex)
{
msg = ex.what();
}
catch (std::exception &ex)
{
msg = ex.what();
}
catch (...)
{
msg = "uncaught exception!";
}
Кто-нибудь, кто может прокомментировать, что именно происходит?