Delphi中的静态多态性

时间:2009-09-09 12:31:48

标签: delphi delphi-2009 delphi-2010

有没有办法在Delphi 2010中实现静态多态?

2 个答案:

答案 0 :(得分:6)

Delphi中无法实现静态多态性;泛型不是模板。与模板不同,泛型在声明时解析,而不是在实例化时解析。这就是为什么编译模块(* .dcu)只需要包含泛型实体的AST表示,而从未实例化的C ++模板声明构建AST几乎是不可能的。

答案 1 :(得分:3)

从Delphi 2009开始,有一些泛型。结合类或接口约束,您可以使用它们来实现静态多态性。

不幸的是,Delphi 2009中的泛型支持是非常错误的,因此您可能需要考虑使用Delphi 2010(重读您的问题,您似乎仍在使用D2010)