我可以在Delphi中拥有对象过程的泛型约束吗
我可以在“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:
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
在尝试使用处理程序时可能无法编译。