我需要释放这些物品吗?

时间:2010-07-07 12:24:52

标签: delphi

我正在使用Delphi 1 16位来学习Pascal(不要笑,它工作正常,加上我买不起更新的版本)。我正在使用TList来保存简单地址簿的对象引用。每个对象都添加到TList中,如下所示:

DataList.Add(TAddrBookData.Create('Bob', '1 Mill St'));

我是否需要自己释放TAddrBookData对象?或者当TList.Free运行时它们被释放了吗?

2 个答案:

答案 0 :(得分:12)

你需要自己释放它们。更高版本带有TObjectList,它类似于TList,除了它只接受对象,它可以选择获取所有权并在释放列表时自动释放它们。但我不相信Delphi 1中存在TObjectList,所以你必须手动处理它。

答案 1 :(得分:8)

你也需要免费(或FreeAndNil)。

如果您想学习使用更新(和免费)IDE的Object Pascal(Delphi)尝试Lazarus,因为免费的Turbo Delphi 2006已经停止(这是一个糟糕的举动)。