,
本篇博客中 , 讨论 抛出 / 捕获 的 异常类 存在 继承结构 的情况 ;
一、抛出 / 捕获 多个类型异常对象
1、抛出 / 捕获 多个类型异常对象
定义一个函数 , 传入一个 int 类型的参数..., 抛出不同的异常 ,
// 1....二、异常类的继承层次结构
1、抛出子类异常对象 / 捕获并处理 父类异常对象
如果 抛出 / 捕获 多个类型的异常对象 , 每次拦截处理异常时 , 都要手动编写多个 catch 分支 , 不利于代码维护...;
如果将 相似类型的异常 都继承自 一个父类 , 那么每次拦截时 , 只需要拦截一个父类异常即可 ;
定义父类异常 , 其中定义一个纯虚函数 , 该纯虚函数是异常打印 , 或者异常处理的通用操作 ;..., 会发生多态 ;
在拦截父类对象时 , 调用不同的 异常对象 , 会分别调用不同子类的 虚函数方法 ;
抛出异常的函数如下 , 抛出异常时 , 需要抛出子类异常对象 ;
// 1.