大哥们:
  我用一个动态数组来创建动态控件?
现在我想通过释放这个数组的办法,来释放他所创建的动态控件?
代码:
  a:array of Tedit;
  setlength(a,5);
  a[0]:=Tedit.creat(self);
  ......
  if a数组有内容(不为空)then
   释放a数组

解决方案 »

  1.   

    能不能详细点呀?
    setlength(a,0)
    能释放掉吗?
      

  2.   

    for i:=0 to 4 do if a[i] <> nil then a[i].free;
    setlength(a,0);
      

  3.   

    // 对象要一个个的释放。
    for i:= low(a) to high(a) do
    begin
      if assigned(a[I]) then a[I].free
    end;setlength(a, 0);
      

  4.   

    好象在书上说动态数组不用释放,DELPHI会进行回收的如果要释放只要array:=nil;就行了
      

  5.   

    对不起 题目没有看全
    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;