请教以下代码使用后,程序退出时如何释内存资源?(50分)

  • 主题发起人 主题发起人 redted5
  • 开始时间 开始时间
R

redted5

Unregistered / Unconfirmed
GUEST, unregistred user!
type
tblWarnInfoRec = record
typeID :longInt;
fieldId :longInt;
FieldValue:LongInt;
fieldString:String[80];
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
var
va_tblWarnInfoRec,vb_tblWarnInfoRec:^tblWarnInfoRec;
BA_tblWarnInfoRec:TBaseArray;
i:integer;
procedure TForm1.Button1Click(Sender: TObject);
begin
if not query1.active then query1.Open;
query1.first;
i:=0;
while not query1.eof do
begin
GetMem(va_tblWarnInfoRec,SizeOf(tblWarnInfoRec));
with query1 do
begin
va_tblWarnInfoRec.typeID:=FieldByName('TypeID').AsInteger;
va_tblWarnInfoRec.FieldID:=FieldByName('FieldID').AsInteger;
va_tblWarnInfoRec.FieldValue:=FieldByName('FieldValue').AsInteger;
va_tblWarnInfoRec.fieldString:=FieldByName('FieldString').AsString;
BA_tblWarnInfoRec.Insert(i,va_tblWarnInfoRec);
next;
i:=i+1;
end;
end;
end;

end.

 
freemem(va_tblWarnInfoRec);
 
我是这样释放的,可是觉得不成功,跟踪发现指针va_tblWarnInfoRec并没有置为nil
BA_tblWarnInfoRec.free;
freeMem(va_tblWarnInfoRec,SizeOf(tblWarnInfoRec));

 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
2K
import
I
S
回复
0
查看
951
SUNSTONE的Delphi笔记
S
后退
顶部