关于delete [] array;
时间:2011-12-06
来源:互联网
{
int n;
cin>>n;
int *array = new int [n];
for( int i=0; i<n; i++ )
array[ i ] = n-i;
for( int i=0; i<n; i++ )
cout<<array[ i ]<<" ";
delete [ ] array;
//array[ 0 ] = 10;
for( int i=0; i<n; i++ )
cout<<array[ i ]<<" ";
return 0;
}
// delete 后,还可以继续使用数组?是不是说,只是释放内存而已!
作者: zdxing007 发布时间: 2011-12-06
delete后在cout数组的内容输出的只能是垃圾而已
作者: chenph_210 发布时间: 2011-12-06
作者: zshtang 发布时间: 2011-12-06
delete的作用是告诉操作系统,这块内存你用完了,可以被分配给别的程序或者下一次重新分配使用了。因而delete后应将指针赋值NULL,套不然可能导致不可预料的问题
是的,要赋值于NULL。我调试过,要是不这样,还是一样可以输出数组。
但很多程序并没有赋值于NULL。
作者: zdxing007 发布时间: 2011-12-06
代码简单的时候怎么都无所谓,但若复杂了,出了问题可能会花费你很多时间。就是这样一个问题
作者: zshtang 发布时间: 2011-12-06
数组指针是一个指针常量 指向你申请的一段内存。
delete后你就可已对他随便操作了。
作者: l460602540 发布时间: 2011-12-06
(借用,大神的例子)
作者: l460602540 发布时间: 2011-12-06
这个就像我现在申请了一个教室,指针就是密码锁的钥匙,delete就是告诉学校我把教室还你了,别人申请就可以用了。而如果该教室未被别人使用,而你又拥有密码,你自然还是可以进入教室的
(借用,大神的例子)
++
作者: zl6511130 发布时间: 2011-12-06
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28