初学者很简单的问题. (10分)

  • 主题发起人 主题发起人 xingsx
  • 开始时间 开始时间
X

xingsx

Unregistered / Unconfirmed
GUEST, unregistred user!
var s:string;
begin
Setlength(s,10000);
Finalize(s);//s使用后要用这句释放吗?没这句Delphi会不会自动释放?
end;

如果是这样呢?
var s:array of (any)
begin
setlength(s,1000);
finalize(s);//需要这句吗?
end;
 
Delphi自动管理动态数组?!
 
可以不用Finalize那句. string是生存期自管理类型.

 
最好能够加一个
SetLength(S, 0);
 
最常用的方法是s:=nil;
 
到底要加还是不要加释放语句?我都糊涂了
 
String类型,是生存期自管理类型,是可以自动释放的。
当内存吃紧时,可能希望在生存期内释放string占据的内存,
就可以采用楼上几位的方法释放.
 
不需要,像String、动态数组Delphi是自动管理内存的,当你程序中不再应用该变量时
会自动释放该变量占用的资源(内存)
 
多人接受答案了。
 
后退
顶部