Effective C++ 条款8:别让异常逃离析构函数
来源:互联网 发布:java工作两年工资 编辑:程序博客网 时间:2024/06/13 11:11
建议
- 析构函数绝对不要吐出异常.如果一个被析构函数调用的函数可能抛出异常,析构函数应该捕捉任何异常,然后吞下它们(不传播)或结束程序.
- 如果客户需要对某个操作函数运行期间抛出的异常做出反应,那么 class 应该提供一个普通函数(而非在析构函数中)执行该操作.
两点理由
- 如果析构函数抛出异常,则异常点之后的程序不会执行,如果析构函数在异常点之后执行了某些必要的动作比如释放某些资源,则这些动作不会执行,会造成诸如资源泄漏的问题。
- 通常异常发生时,c++的机制会调用已经构造对象的析构函数来释放资源,此时若析构函数本身也抛出异常,则前一个异常尚未处理,又有新的异常,会造成程序崩溃的问题。
阅读全文
0 0
- 《Effective C++》学习笔记条款08 别让异常逃离析构函数
- Effective C++——》 条款08:别让异常逃离析构函数
- Effective C++:条款08:别让异常逃离析构函数!
- [Effective C++]条款08 别让异常逃离析构函数
- 读书笔记《Effective C++》条款08:别让异常逃离析构函数
- Effective C++ 条款8:别让异常逃离析构函数
- 条款8:别让异常逃离析构函数
- 条款8:别让异常逃离析构函数
- Effective c++学习笔记——条款08:别让异常逃离析构函数
- Effective c++学习笔记——条款08:别让异常逃离析构函数
- Effective c++学习笔记——条款08:别让异常逃离析构函数
- Effective C++ 条款08 别让异常逃离析构函数
- Effective C++ 条款08:别让异常逃离析构函数
- 《Effective C++读书笔记》--条款08:别让异常逃离析构函数
- effective c++ 条款7,8(为多态基类声明virtual析构函数,别让异常逃离析构函数)
- 条款08:别让异常逃离析构函数
- 条款08:别让异常逃离析构函数
- 条款08:别让异常逃离析构函数
- CCIE-MPLS VPN-实验手册(上卷)
- maven的安装步骤
- maven与ide工具的整合
- CCIE-MPLS基础篇-实验手册
- 输入一个URL到页面呈现的过程
- Effective C++ 条款8:别让异常逃离析构函数
- 获取点击的option
- CCNA基础知识摘录
- 洛谷P1591--阶乘数码_题解
- -Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.
- 数组转换list集合问题
- 自制EIGRP配置实验大全
- mybatis入门程序
- 提高你的Python: 解释yield和Generators(生成器)