スローされたすべてのエラーが catch ブロックによってキャッチされ、
正常に処理されるというわけではありません。
ある状況においては、例外を処理する最良の方法は、プログラムを終了することです。
C++ には、catch ブロックによって正しく処理できない例外、または有効な try ブロックの外部にスローされる
例外の処理のために、2 つの特殊なライブラリー関数がインプリメントされています。
これらの関数は、unexpected() および terminate() です。
関連参照