C++ del 内存空间

来源:百度知道 编辑:UC知道 时间:2024/05/17 08:01:24
各们C++高手们,您们好,

小弟有一个地方搞不清楚,
就是在C++ del 内存空间

delete p;

delete []p;
有什么不同?

delete p; 是释放p变量 对应 new 申请的空间
例如:char *p = new char;
delete p; //只释放了一个

delete []p;是释放p数组 对应 new[] 申请的空间
char *p = new char[10];
delete []p; //将10个元素都释放了

如果上面的第二个例子写 delete p;则只释放了一个char的空间,发生了空间泄漏。

一个是释放一个变量的
一个是释放一个数组的
你慢慢看吧!
祝你好运!