我在代码中创建了以下简单类,我得到“TObject不是有效约束”错误消息。
TTest = class
class function Test<T:TObject>(Dummy: integer): string;
end;
...
class function TTeste.Teste<T>(Dummy: integer): string;
begin
Result := 'Compiled';
end;
我做错了什么?这可能吗? (您可以在D2010以后的版本中添加选项,因为我们将在接下来的两周内收到XE2许可证。)
答案 0 :(得分:8)
尝试class
约束:
TTest = class
class function Test<T:class>(Dummy: integer): string;
end;
它可能不仅接受普通类,而且还接受具有该约束的接口(在C#中它,并且Delphi泛型模仿C#泛型)。