C++细节

来源:互联网 发布:spss数据分析认证 编辑:程序博客网 时间:2024/05/22 10:30

1.关于delete[] p。

在用delete 释放对象数组时,留意不要丢了符号‘[]’。例如

delete []objects; // 正确的用法
delete objects; // 错误的用法

后者相当于delete objects[0],漏掉了另外99 个对象

基本类型的对象没有析构函数,所以回收基本类型组成的数组空间用 delete 和 delete[] 都是应该可以的;但是对于类对象数组,只能用 delete[]。对于 new 的单个对象,只能用 delete 不能用 delete[] 回收空间。

所以一个简单的使用原则就是:new 和 delete、new[] 和 delete[] 对应使用。

0 0