小编Ser*_*hiy的帖子

记录和内存泄漏

你能帮帮我解决这个问题.这是我的代码.我存储(在此示例中)10000个字符串,当我尝试删除它们时,只有一些内存被释放,其余的泄漏.

type
  PMyData = ^TMyData;
  TMyData = record
  Name:    string;
end;
////////

var
XList:Tlist;
//////////

// Here is how I add//
var
 MyData: PMyData;
 I:Integer;
begin
 for I:=0 to 10000 do begin
 New(MyData);
  MyData.Name:='Hello';
   XList.Add(TObject(MyData));
  end;
end;


///Here is how I delete///
var
 MyData: PMyData;
 I:Integer;
begin
 for I:= XList.Count - 1 downto 0 do begin
 MyData:=PMyData (XList[I]); /// I also used (XList.Items[I])  but the result is the same
  Dispose(MyData);
    XList.Delete(I);
end;
Run Code Online (Sandbox Code Playgroud)

delphi

3
推荐指数
3
解决办法
1994
查看次数

标签 统计

delphi ×1