C++new创建动态数组的问题

使用new和delete时,应遵守规则1.不要使用delete来释放不是new分配的内存;2.不要使用delete释放同一个内存块两次;3.如果使用new[]为数组分配内... 使用new和delete时,应遵守规则
1.不要使用delete来释放不是new分配的内存;
2.不要使用delete释放同一个内存块两次;
3.如果使用new[]为数组分配内存,则应使用delete[]来释放;
4.如果使用new[]为一个实体分配内存,则应使用delete(没有中括号)来释放;
5.对空值指针应用delete是安全的;

问题就是第4条规则不能理解:什么是实体分配内存?谢谢了
展开
 我来答
donaroo
推荐于2018-05-10 · TA获得超过1365个赞
知道小有建树答主
回答量:934
采纳率:0%
帮助的人:636万
展开全部
这里的一个实体是指的就是单一的类型,比如:int char struct class
这里主要是和一组相区别,不是new出上边那些类型的数组。
其实很简单:
int *pi = new int;
delete pi;
char *pchar = new char;
delete pchar;
int *piArray = new int[10];
delete[] piArray;
char* pCharArray = new char[10];
delete[] pCharArray;

只有new的的对象是数组的时候才会用delete[]释放
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式