您好我有一个TList
类型的列表。我用指向用new
创建的记录的指针填充它。
我的一位同事告诉我,释放列表将释放所有元素,但我有疑虑,因为我习惯于C.所以Delphi 7有一些垃圾收集,我真的不需要自由每个元素?有人可以向我解释这是如何工作的吗?
答案 0 :(得分:14)
TList
持有指针,但它不拥有他们指向的东西。它不能,因为它不知道你如何分配它们,所以它也不知道如何释放它们。如果它们应该被销毁,你需要自己销毁这些物品。
您的同事可能会考虑TObjectList
,可以选择拥有列表中的项目。