例外クラス
http://www.geocities.jp/ky_webid/cpp/library/027.html
標準で用意されている例外クラスの紹介がありました。
どの例外クラスもstd::exceptionクラスから派生したものになっています。
以下にその表を書いてみます。std::はスペースの都合上省きます。
exception | bad_alloc | |
bad_cast | ||
bad_typeid | ||
logic_error | out_of_range | |
invalid_argument | ||
length_error | ||
domain_error | ||
bad_exception | ||
runtime_error | range_error | |
overflow_error | ||
underflow_error | ||
ios_base::failure |
表の左が基底クラスで右に派生していく感じで見てください。
そんなに多くはないんですね。
ちなみにstd::exceptionはexceptionヘッダで定義されています。それ以外の例外クラスに関してはそれぞれ異なるヘッダで定義されているようです。
これらの例外クラスの意味は記事を読んでざっと理解しておきましょう。このあたりは実際に使う場面になったときに詳細を調べるのがいいと思います。