delete和delete[]的区别
C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。
关于 new[] 和 delete[],可以分为两种情况: (1) 为基本数据类型分配和回收空间; (2) 为自定义类型分配和回收空间。 对于 (1),当new的是多个对象时, delete[] 和 delete 是等同的;对于 new 的单个对象,只能用 delete 不能用 delete[] 回收空间。 但是对于 (2),情况就发生了变化。请看下面的程序。 #include <iostream>; |