首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

二维动态指针销毁解决思路

2012-02-11 
二维动态指针销毁我写了一段程序,使用到二维指针动态生成,大概步骤是这样:double**Dnewdouble*[n]for(in

二维动态指针销毁
我写了一段程序,使用到二维指针动态生成,大概步骤是这样:
double   **   D=new   double*[n];
for(int   i=0;i <n;i++)
D[i]=new   double[n-i-1];
.......
//销毁部分
for(i=0;i <n;i++)
delete[]D[i];
delete   D;//这句话出错
我跟踪到最后一句话出错,而且我看了D和D[0]指向的内存肯定不一样,去掉最后一句话程序就可以跑了,请教谁能解释一下为什么吗?



[解决办法]
double **D=new double*[patternNum-1];
for(int i=0;i <patternNum;i++)
D[i]=new double[patternNum-i-1];
===>
越界: i=patternNm-1; D[patternNum-1]

热点排行