我在一窗口定义一全局链表,在窗口的OnShow事件里给链表装初值;我关掉窗口后再启动窗口时发现原链表并没删除,并在后面进行追加数据。难道窗口关掉后,链表不会自动释放吗?那我应该如何删除它,请给个例子吧,多谢了!!
解决方案 »
- ClientSocket和ServerSocket的问题
- 如何能操作activeX里的控件???
- 各位高手是如何写数据库备份与恢复的?
- ModelMaker安装后怎么在d7没有嵌入菜单,重新安装mm也不行,是否与安装CodeRush有关系
- 【用过WaitForSingleObject的来看看】
- 请问两个初学者的问题?一定给分,急!
- 如何知道鼠标单击了 ListView 里的那个 SubItem ?及这个 SubItem 的宽及高度
- delphi的程序在线程里 怎么降低CPU占用?
- 关于ADO和ACCESS的一段代码.难道都要这样连接吗?高手来吧!
- 帮忙看一下。
- 关于windows下调用bat批处理文件的问题
- 请教:在接口里如何传递数组
var
f : textfile;
i : integer;
str,str1 : string;
flagz : bool;
Header,P: PMyList;begin //创建链表
Header := MyList;
//// assignfile(f,'zxg.ini');
listbox1.Clear;
listbox2.Clear; for i := 0 to totalrow - 1 do
begin
flagz := false;
reset(f);
while not eof(f) do
begin
readln(f,Str);
str1 := copy(str,1,6);
if gpdm[i].id = str1 then
begin
listbox2.Items.Add(str);
flagz := true;
break;
end ;
end;
if flagz = false then
begin
New(Mylist);
Mylist^.code := gpdm[i].id;
Mylist^.Name := gpdm[i].name;
Mylist^.zm := gpdm[i].py;
Mylist^.Ptr := Header;
Header := Mylist;
listbox1.Items.Add(Mylist^.code+' '+Mylist^.Name);
end;
CloseFile(f);
end;
Ra_dm.Checked := true;
end;
你每调用一次New系统就会为之分配一定的资源,
所有New的地方都要Dispose
所以你在关闭的时候作Dispose就可以了