条款17:以独立语句将NEWED对象置入智能指针
来源:互联网 发布:超市商品档案数据 编辑:程序博客网 时间:2024/05/21 20:28
错误代码:
processWidget(std::tr1::shared_ptr<Widget>(new Widget), priority());
原因:若编译器最终获得这样的操作序列:
1、执行“ new Widget()”
2、调用priority
3、调用shared_ptr的构造函数
但万一对priority的调用导至异常,会发生什么事情?内存泄漏。
正确代码:
std::tr1::shared_ptr<Widget> pw(new Widget);
processWidget(pw, priority());
- 条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立语句将NEWED对象置入智能指针
- effective c++ 条款17 :以独立语句将newed 对象置入智能指针
- 条款17:以独立语句将newed的对象置入智能指针
- 《Effective C++》学习笔记条款17 以独立语句将newed对象置入智能指针
- Effective C++——》条款17:以独立语句将newed的对象置入智能指针
- 条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立语句将newed对象置入智能指针
- Effective C++:条款17:以独立语句将newed对象置入智能指针
- 条款17 以独立的语句将newed对象置入智能指针
- 条款17以独立语句将newed对象置入智能指针
- 读书笔记《Effective C++》条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立语句将newed对象置入智能指针
- 条款17:以独立的语句将newed对象置入智能指针
- item17: 以独立语句将newed对象置入智能指针
- effective C++ 读书笔记 条款17 以独立语句讲newed对象置入智能指针
- 如何用Windbg调试禁止使用调试器的程序
- Android 进程与线程
- Android 基础知识
- 说说字符集和编码
- WebWork框架之Select标签
- 条款17:以独立语句将NEWED对象置入智能指针
- Android组件间的交互和进程间IPC通信
- 快速排序
- 笔记-写Unicode文件
- 创建窗口
- Web Service入门
- socket 客户端
- ARM指令
- 网游云计算?