delphi 中数组的释放!

zdy 2000-12-20 01:13:00
如果我定义一个大数组,怎么样释放数组所占的内存!
如果我定义在一个过程中就是说是局部变量,过程完
后,过程结束后变量所占内存是否一定都释放了??
eg:
answer16002 := VarArrayCreate([0, 16002], varbyte);
多谢了!
...全文
743 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sendnet 2000-12-24
  • 打赏
  • 举报
回复
如果你申请了你存,则要自己释放,否则不需要自己释放

我不同意该兄的意见,如果你声明的数组是整形.字符等类型就不需要显示的释放,如果是TFONT等类型就要显示的调用释放函数了!这个一定准!
whoo 2000-12-20
  • 打赏
  • 举报
回复
我通常用:
LargeArray: Array of Byte;

SetLength(LargeArray,16002);
.
.
.
SetLength(LargeArray,0);
netsong 2000-12-20
  • 打赏
  • 举报
回复
同意楼上的各位兄弟
frankguo 2000-12-20
  • 打赏
  • 举报
回复
如果你申请了你存,则要自己释放,否则不需要自己释放
saoren 2000-12-20
  • 打赏
  • 举报
回复
试试:
answer16002:=nil;
过程的数据变量我从来没有去释放,对象或控件就把它Free.
zheng 2000-12-20
  • 打赏
  • 举报
回复
只要赋值nil给引用此数组的变量,或将变量传递给finalize.就可以释放。
象Tstringlist等不能,需要用free释放。
Kingron 2000-12-20
  • 打赏
  • 举报
回复
delphi的内存管理是比较完善的。好像是的吧?除非自己显式GetMem,一般不需要Free。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧