这里会发生什么?
当过程结束并超出范围时,对象是否仍然有效?它会保持未分配状态还是我仍然可以参考?
每当用户决定将项目添加到我的控件时,我都需要添加此类项目,并且我还必须通过在用户的活动上创建然后添加我的类的对象。我担心,当我需要处理这些对象以在我的应用程序中进一步使用时,它们会保留在范围内还是可以访问?或者他们的参考资料会丢失?
procedure TForm1.Button1Click(Sender: TObject);
var
LMyCustomObj : TMyCustomObject;
begin
LMyCustomObj := TMyCustomObject.Create;
ListBox1.Items.AddObject('1', LMyCustomObj);
end;
进一步,如果我添加
LMyCustomObj.Free;
对于我的函数,它们是否也会从控件的集合中删除,还是会导致内存泄漏?