Pie*_*Wyk 8 delphi tobjectlist
我有一个FileEventObjects := TObjectList.Create(True);包含一个或多个对象的TObject列表().对象需要保留在列表中,直到它们被处理.(对象列表在应用程序的持续时间内存在.)
我不完全确定如何从列表中删除已处理的对象.
如果我这样做,对象是否会被"释放" FileEventObjects.Delete(i)
是否有任何有用的TObjectLists实例的链接?
问候,彼得.
jpf*_*ius 13
如果您传递True给TObjectList构造函数(True默认情况下也是这样),则无论您是否使用Delete,该列表都会从集合中删除任何对象,Remove或者Clear.
除此之外,TObjectList可以像使用一样TList.
永远记得像
for i := Pred(objectlist.Count) downto 0 do
begin
objectlist.items[i].process;
objectlist.delete(i);
end;
Run Code Online (Sandbox Code Playgroud)
如果您从0循环到-1,同时删除项目,则会出现访问冲突