2 dispro dispro 于 2014.05.26 19:01 提问

c++语法new与delete问题

CBase*d2=new CBase[1];delete[] d2;

CBase*d2=new CBase;delete d2;

CBase*d2=new CBase[1];delete d2;

CBase*d2=new CBase;delete[] d2;

分别有什么区别

2个回答

lym753024200
lym753024200   2014.05.26 19:17

用new分配的内存块就要用delete释放,用new[]分配的内存块就要用delete[]释放,即使[]内是1!不要匹配错了

oyljerry
oyljerry   Ds   Rxr 2014.11.19 13:46

对象分配是数组方式还是单个方式。
通用的规则就是new的时候用数组[], 那么释放的时候就是delete[]
否则就是new 对应delete

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!