捕获异常
引用捕获异常
如果你要处理的是继承体系中的异常类型,用"引用"来接收异常对象是最佳实践,可以避免复制、保留完整对象信息,方便后续操作。
比如如果catch的参数是基类类型,则我们可以使用其派生类类型的异常对象对其进行初始化,引用传参能保证该异常对象不发生对象切片。
e.g.抛出派生类异常对象,catch中使用基类指针捕获异常
查找匹配的处理代码
按出现的顺序逐一匹配
只允许从非常量向常量,派生类向基类,数组被转换成指向数组(元素)类型的指针,函数被转换成指向该函数类型的指针的类型转换。
不允许标准算术类型和类类型等转换规则。
如果在多个catch语句的类型之间存在着继承关系,则我们应该把继承链最底端的类放在前面,而将继承链最顶端的类放在后面。
评论