1. 使用异常处理机制的好处是什么?
- 将常规代码与错误处理代码的分离
- 实现在调用栈中传播异常
- 实现对不同的错误类型进行分类
2. 简述C++中的异常处理机制。要捕获某段代码中的所有异常,应该如何编写代码?
C++中,$try$与$catch$用于实现异常的处理。
当$try$块出现异常,则$catch$中匹配相应的异常处理,若$catch$块中没有匹配该异常对象的语句,则转向外一层的$try$、$catch$语句,若一直退回到主函数都无法处理异常,则由系统调用$terminate()$函数终止程序。用异常规格($exception$ $specification$)列出函数可能会抛出所有异常的类型。
try{
//包含可能抛出异常的语句;
}catch(类型名 [形参名]){
//可能出现的异常1
}catch(类型名 [形参名]){
//可能出现的异常2
}catch(...){
//如果不确定异常类型,在这里可以捕获所有类型异常!
}
