中国开发网: 论坛: 程序员情感CBD: 贴子 408027
茶壶: 除了自己通知OwnedList或者设置相应的记录器,没什么好方法。
大体上,这类问题的产生源自Delphi的编译器。

在以前的编译器中,还得自己实现FreeAndNil。
下面的语句有对话框弹出来。
AObject.Free;//要改成FreeAndNil(AObject)
if Assigned(AObject) then ShowMessage('Not Nil');

事实上,TObjectList的所包含的对象,建议创建时使用Create(True),移除时直接Remove(Indexof(AObject)),它会自释放的。

如果不得不检测是否在外部被释放,那还不如直接用TList并创建自己的通知机制。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录