var aList:TList;
i:integer;
...
for i:=0 to aList.count-1 do begin
...
if 条件 then
aList.delete(i);//在这里做删除会不会有问题???
end;如上面注释所说的,能不能那样做删除,会不会导致内存出错有更好的办法吗?
i:integer;
...
for i:=0 to aList.count-1 do begin
...
if 条件 then
aList.delete(i);//在这里做删除会不会有问题???
end;如上面注释所说的,能不能那样做删除,会不会导致内存出错有更好的办法吗?
解决方案 »
- Delphi问题!
- 为什么DirectoryListing属性总是为空??
- 在有线程程序中不能打开输入法
- 高分:请教一个用SQL语句向SQL Server2000插入二进制(image)数据的问题!
- 送分(急,在线等)
- ActievX Control 与ActiveX Form
- 各位大侠,请不吝赐教:如何方便地把 csv文件数据整个导入到 表中 (如access)?
- 100分求32*32大小的图标库或xp的图标库?
- 大事不好,谁有DbGridEh的完整版,能不能给我一份!前些天我从网站上下载了DbGridEh的评估版,并用它编写了十几个程序,直到今天我才发现,原来用它编译的EXE文件必须在Delphi运行的时候才能运行!!!
- DELPHI和API类型的问题???
- Pagecontrol上的Tabsheet
- SQL多表查询的结果大家如何存储和处理??
for I := aList.Count downto 0 do begin
if xxx then
aList.delete(i-1);//
end;
begin
if 条件 then
begin
//先释放指针指向的内存控件
……
//然后删除指针
AList.Delete(i);
end;
end;
for i := List.Count - 1 downto 0 do
List.Delete(i);或是
While List.Count > 0 do
List.Delete(0);