例外の通知に使用する複数の標準クラスを定義します。 このクラスは、exception クラスから派生したものからなる派生階層を形成します。このクラスには、論理エラーと実行時エラーという 2 種類の一般的な例外の型が含まれます。 論理エラーはプログラマの誤りが原因で発生します。 これらは、基底クラス logic_error から派生します。
domain_errorinvalid_argumentlength_errorout_of_range
実行時エラーは、ライブラリ関数か実行時のシステムの誤りが原因で発生します。 これらは、基底クラス runtime_error から派生し、次のものが含まれます。
overflow_errorrange_errorunderflow_error
クラス
| クラス | 説明 |
|---|---|
| domain_error クラス | このクラスは、ドメイン エラーを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| invalid_argument クラス | このクラスは、無効な引数を通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| length_error クラス | このクラスは、生成を試みたオブジェクトが長すぎて指定できないことを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| logic_error クラス | このクラスは、論理的前提条件に対する違反など、プログラムの実行前に検出可能なエラーを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| out_of_range クラス | このクラスは、有効範囲外の引数を通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| overflow_error クラス | このクラスは、算術オーバーフローを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| range_error クラス | このクラスは、範囲のエラーを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| runtime_error クラス | このクラスは、プログラムの実行時にのみ検出可能なエラーを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |
| underflow_error クラス | このクラスは、算術アンダーフローを通知するためにスローされる例外すべてに対する基底クラスとして機能します。 |