次の C++ コードを検討してください。
class MyException {};
void someFunction()
{
try
{
/// ... code that may throw
}
catch(std::exception& e )
{
throw MyException();
}
}
質問
例外 e は、catch ブロックの先頭で吸収されるか、catch ブロックの最後で吸収されるか?
2 番目のケースでは、新しい例外をスローすると、飛行中の 2 つの例外が発生します。これは、私が望んでいるものではありません。std::exception を吸収して、自分のタイプの 1 つを開始したいと考えています。