标准库异常类定义在以下四个头文件中
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类型之定义了默认构造函数
转载于:https://blog.51cto.com/tooth/468702