gpt4 book ai didi

delphi - Delphi 中使用泛型的属性

转载 作者:行者123 更新时间:2023-12-03 14:47:08 27 4
gpt4 key购买 nike

我正在尝试编写一个使用泛型的属性:

type TMyClass = class
protected
function GetCountBy<T: Class>: Integer;
public
property CountBy<T: Class>: Integer read GetCountBy<T>;
end;

但编译在属性声明上失败,并显示消息“Property CountBy 在基类中不存在”,并且属性名称的开头 < 上有红色波浪线。

有什么办法可以实现这一点吗?

编辑:这是我的另一个用例,它更复杂但更真实:

property ItemsBy<T: Class>[Index: Integer]: T read GetItemsBy<T> write SetItemsBy<T>;

该函数过滤列表的内容以返回指定类的第 Index 项。

最佳答案

Delphi 不支持通用属性。仅泛型类或泛型方法。

我在文档中找不到任何明确说明该限制的内容。另一方面,文档仅描述通用类和通用方法。还有new language grammar to support generics也没有提及属性。

关于delphi - Delphi 中使用泛型的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10903797/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com