【发布时间】:2021-12-13 01:11:25
【问题描述】:
我有类字段
someList : TList<SomeInterFace>;
我只需要在列表中存储对象并搜索它们,从不想修改。所以我决定写
someList : TList<const SomeInterFace>;
但是我有很多编译器错误。似乎不可能将 const 对象存储在标准的 Delphi 容器中?
【问题讨论】:
-
您永远不想修改...列表的内容或对象的内容?接口引用的生命周期也是通过引用计数来处理的。
const仅在作为参数传递时适用于接口引用,并且它用作向编译器发出的信号,不会触发该参数的引用计数机制。您是否尝试在列表中存储弱接口引用?
标签: object delphi interface constants containers