有个Tlist变量,他的成员是Tlist,而成员的成员是TlistString即如下:
var
  fTList: Tlist;
  sTlist: Tlist;
  tempTlist: Tlist;
  tTlistString: TListString;
begin
  fTlist.Create;
  fTlist.Add(sTlist.Create);
  tempTlist := fTlist[0];
  tempTlist.Add(tTlistString.Create);
  fTlist[0] := tempTlist;
end;那么如果我要释放这些动态分配的内存,是否需要对每个Tlist进行释放,还是只要释放最原始的?
谢谢!

解决方案 »

  1.   

    老兄,你在干嘛呀.这种代码都写得出来呀....
      fTlist.Create;
      fTlist.Add(sTlist.Create);   //你测试过了吗???这一行代码能通过吗???
      tempTlist := fTlist[0];
      tempTlist.Add(tTlistString.Create);  //你测试过了吗???这一行代码能通过吗???
      fTlist[0] := tempTlist;按作者的意愿.实际上创建了三个对象,FTList,STList,TTListString.
    翻译顺序是
      FTList.List[0].List[0].Free;
      FTList.List[0].Free;
      FTList.Free;
      

  2.   

    你的代码简直是。无法言语了!需要这么烦杂吗?
    还要去建立一个什么临时TList,需要吗?