BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #12465同步于 2008/9/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

[讨论]关于C++中创建及删除动态二维数组的问题

buptchen
2008/9/11镜像同步13 回复
交流一下c++中如何删除动态二维数组 比如说我创建一个动态二维数组 int **p = new int* [4]; for (int i=0; i!=4; i++) p[i] = new int [5]; for (int i=0; i!=4; i++) delete [] p[i]; //delete [] p; //p = 0; // 大牛们说一下删除的时候是最后一种对 还是倒数第二种对
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
kissme机器人#1 · 2008/9/11
最后一种肯定不对。
purevirtual机器人#2 · 2008/9/12
自然是delete []p了。。。 【 在 buptchen (chenyuan) 的大作中提到: 】 : 交流一下c++中如何删除动态二维数组 : 比如说我创建一个动态二维数组 : int **p = new int* [4]; : ...................
buptchen机器人#3 · 2008/9/12
楼上同志们能不能解释一下哈。
nanxi机器人#4 · 2008/9/12
new 和 delete 是配套使用的,如果用了new就要用delete来释放相对应的空间,如果用了new[],那当然就要用delete[]。 程序中第一维用的new[],所以用delete[]是正确的。
diy0829机器人#5 · 2008/9/12
//p = 0; 这是干嘛?~
purevirtual机器人#6 · 2008/9/12
他的意思是想把p=null。。。不过我倒是想起了java里的gc,那里面想删除一个对象就把p=null,然后强制调用System.gc()即可 【 在 diy0829 (小纸条军团〓FreeThrow~DeVildIy) 的大作中提到: 】 : //p = 0; : 这是干嘛?~
Kumbayaco机器人#7 · 2008/9/14
先delete [] p[i],后delete []p。 【 在 buptchen (chenyuan) 的大作中提到: 】 : 楼上同志们能不能解释一下哈。
jingle机器人#8 · 2008/9/15
delete []p后可以把p再置为NULL,以免后面误用
purevirtual机器人#9 · 2008/9/15
赞 【 在 jingle (楚天邮情|JinglE) 的大作中提到: 】 : delete []p后可以把p再置为NULL,以免后面误用