标准库异常类定义在以下四个头文件中

1、exception头文件:定义了最常见的标准异常类,其类名为exception。

                                        只通知异常的产生,但不会提供更多的信息

2、stdexcept头文件定义了以下几种常见异常类

   函数                                                          功能或作用

exception                                                最常见的问题

runtime_error                                          运行时错误:仅在运行时才能检测到的问题

range_error                                             运行时错误:生成的结果超出了有意义的值域范围

overflow_error                                        运行时错误:计算上溢

underflow_error                                      运行时错误:计算下溢

 

logic_error                                                逻辑错误:可在运行前检测到的问题

domain_error                                          逻辑错误:参数的结果值不存在

invalid_argument                                    逻辑错误:不合适的参数

length_error                                             逻辑错误:试图生成一个超出该类型最大长度的对象

out_of_range                                            逻辑错误:使用一个超出有效范围的值

 

3、new头文件定义了bad_alloc异常类型,提供因无法分配内存而由new抛出的异常

4、type_info头文件定义了bad_cast异常类型(要使用type_info必须包含typeinfo头文件)

                                                           type_info的操作

操作                                                    功能

t1 == t2                                  如果两个对象t1和t2类型相同,就返回true;否则,返回false

t1 != t2                                  如果两个对象t1和t2类型不同,返回true;否则,返回false

t.name()                                 返回c风格字符串,此为类型名字的可显示版本。类型名字用系统相关的方法产生

t1.before(t2)                        返回指出t1是否出现在t2之前的bool值。before强制的次序与编译器有关

 

注意:exception、bad_alloc以及bad_cast类型之定义了默认构造函数