一、
new/delete 使用注意:
delete 二维/高维数组的时候,如果用 for(....) delete[] _data[i]
表明 delete 的是每一个元素(一维数组指针)
有一个误区:元素指针都 delete 了,还需要 delete 整个二维数组的指针,即 _data 吗?
不是的,注意 _data == _data[0]
二、
如果对象成员有指针,切记 要手写复制构造函数 和 operator=,来实现深拷贝,不然同一内存区会被重复 delete
一、
new/delete 使用注意:
delete 二维/高维数组的时候,如果用 for(....) delete[] _data[i]
表明 delete 的是每一个元素(一维数组指针)
有一个误区:元素指针都 delete 了,还需要 delete 整个二维数组的指针,即 _data 吗?
不是的,注意 _data == _data[0]
二、
如果对象成员有指针,切记 要手写复制构造函数 和 operator=,来实现深拷贝,不然同一内存区会被重复 delete