代码改变世界

Effective C++ 学习笔记(7)

2011-04-13 11:05  Daniel Zheng  阅读(223)  评论(0编辑  收藏  举报

析构函数里对指针成员调用delete

  大多数情况下,执行动态内存分配的类都在构造函数中使用new分配内存,然后在析构函数中使用delete释放内存。当这个类经过维护,升级后,情况将变得复杂。每增加一个指针成员都有进行如下的操作:

    在每个构造函数中对指针初始化。指向相应的内存地址或者初始化为0,即空指针。

    删除现有内存,通过赋值操作符分配给指针新的内存。

    在析构函数里删除指针。

  对于一个没有用到new去初始化的指针,不用delete去删除。