大哥们:
我用一个动态数组来创建动态控件?
现在我想通过释放这个数组的办法,来释放他所创建的动态控件?
代码:
a:array of Tedit;
setlength(a,5);
a[0]:=Tedit.creat(self);
......
if a数组有内容(不为空)then
释放a数组
我用一个动态数组来创建动态控件?
现在我想通过释放这个数组的办法,来释放他所创建的动态控件?
代码:
a:array of Tedit;
setlength(a,5);
a[0]:=Tedit.creat(self);
......
if a数组有内容(不为空)then
释放a数组
setlength(a,0)
能释放掉吗?
setlength(a,0);
for i:= low(a) to high(a) do
begin
if assigned(a[I]) then a[I].free
end;setlength(a, 0);
array of Tedit;
setlength(a,5);
a[0]:=Tedit.creat(self);解答:
for i:= low(a) to high(a) do
a[I].free
直接FREE 因为如果即使FREE了A[I]的指针也不会为NIL所以ASSIGNED会判定错,除开FREEANDNIL
最后就是
a:=nil;