关于TstringList 的操作

 在对TStringList操作时,经常要用到TStringList的AddObject方法,在用AddObject加入对象后,一定要记得对加入到TStringList中的对象进行释放,方法有二种,如下 :

1.   在已知道对象名跟对象个数的情况下,我们可以用直接的方法把对象Free掉就可以,

如下代码:

var
 vStringList:TStringList;
 vObject:TObject;
begin
 vStringList:=TStringList.Create;
   vObject:=TObject.Create;
  try
    vStringList.AddObject(' vObject ',vObject);
  finally
     if vStringList<>nil then
    FreeAndNil(vStringList);
  end;
vObject.Free
end;

2.   如果不知道对象的名称跟个数据,则我们要用下面的方法进行释放,

代码如下:

var
  vStringList:TStringList;
  vObject:TObject;
  i:Integer;
begin
  vStringList:=TStringList.Create;
  vObject:=TObject.Create;
  try
    vStringList.AddObject('0',vObject);
    ……
    vStringList.AddObject('N',NObject);
  finally
    for i:=0 to vStringList.Count-1 do
    begin
      vStringList.Objects[i].Free;
    end;
    if vStringList<>nil then
    FreeAndNil(vStringList);
  end;
end;

注:如果在用第二种方法的时候,TStringList已经用Delete进行了删除操作,则要找到删除的对象进行释放,否还是会有内存泻漏的问题.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值