我可以在Delphi中拥有对象过程的泛型约束吗

我可以在Delphi中拥有对象过程的泛型约束吗,delphi,generics,delphi-xe4,Delphi,Generics,Delphi Xe4,我可以在“Delphi”中使用“对象过程”类型的“通用约束”吗。 我已经给出了一段代码来理解我的问题 var abc : procedure of object harry <T : abc > = class public procedure b (const handler : X); end; procedure harry.b (const handler : X); begin // do something end; var abc:

我可以在“Delphi”中使用“对象过程”类型的“通用约束”吗。 我已经给出了一段代码来理解我的问题

var
  abc : procedure of object

  harry <T : abc > = class
  public
     procedure b (const handler : X);
  end;


procedure harry.b (const handler : X);
begin
  // do something
end;
var
abc:目标程序
哈利=班级
公众的
程序b(常数处理程序:X);
结束;
程序b(常数处理程序:X);
开始
//做点什么
结束;

任何帮助都是值得的。

不,Delphi通用约束没有那么灵活。文档中非常清楚您可以使用什么作为约束:

:

约束项包括:
零、一或多个接口类型
零或一类类型
保留字“构造函数”、“类”或“记录”


对象的
过程
不满足这些选项中的任何一个。

是否有任何方法可以实现这种类型的功能。我的意思是知道我是否可以通过某种方式实现这一点。不,没有。另一方面,您的示例实际上根本没有使用泛型参数。如果您这样做了,并且您尝试传递对象的
过程以外的内容,那么
b
在尝试使用
处理程序时可能无法编译。