来源:远方网络 | 2005-12-29 14:16:21 | (有6954人读过)
delphi 中数组的释放! 作 者: zdy 所属**: Delphi 回复次数: 6 发表时间: 2000-12-20 13:13:00 如果我定义一个大数组,怎么样释放数组所占的内存! 如果我定义在一个过程中就是说是局部变量,过程完 后,过程结束后变量所占内存是否一定都释放了?? eg: answer16002 := VarArrayCreate([0, 16002], varbyte); 多谢了!
第1楼 回复人:zheng 2000-12-20 13:24:00 返回顶部
只要赋值nil给引用此数组的变量,或将变量传递给finalize.就可以释放。 象Tstringlist等不能,需要用free释放。
第2楼 回复人:Kingron 2000-12-20 13:24:00 返回顶部
delphi的内存管理是比较完善的。好像是的吧?除非自己显式GetMem,一般不需要Free。
第3楼 回复人:saoren 2000-12-20 13:32:00 返回顶部
试试: answer16002:=nil; 过程的数据变量我从来没有去释放,对象或控件就把它Free.
第4楼 回复人:frankguo 2000-12-20 13:39:00 返回顶部
如果你申请了你存,则要自己释放,否则不需要自己释放
第5楼 回复人:netsong 2000-12-20 13:45:00 返回顶部
同意楼上的各位兄弟
第6楼 回复人:whoo 2000-12-20 14:31:00 返回顶部
我通常用: LargeArray: Array of Byte;
SetLength(LargeArray,16002); . . . SetLength(LargeArray,0);
|