本文主要来自上课内容和PPT
异常
是把代码中的错误或异常事件传递给调用方代码 的一种特殊手段
为什么cpp里没有finally?
因为有RAII(resource acquisition is initialization)
使用建议1
- 用异常通知程序的其他部分,发生了不可忽略的错误
- 只有真正例外的情况下才抛出异常
使用建议2
- 不能用异常来推卸责任
- 可以在局部处理的就在局部处理掉
- 避免在构造函数和析构函数中抛出异常,除非你在同一地方把它们捕获
- 在恰当的抽象层次抛出异常
使用建议3
- 在异常消息中加入导致异常发生的全部信息
- 避免使用空的catch语句
使用建议4
- 了解所用函数库可能抛出的异常
- 把项目中对异常的使用标准化
使用建议5
- 考虑异常的替换方案