![]() |
1
1
C中的泛型有你想要的能力。C++中的模板更强大——通过模板生成的代码与手工编写的代码完全相同,除了它们只能编译成内联的部分,这是很吸引人的。 |
![]() |
2
1
@游戏猫,你不能
请注意,无论您使用
例1:
例2:
希望对泛型和约束有一些启发。 --杰罗恩 |
![]() |
3
0
可以对泛型类型设置约束。如果你想使用这种类型的某些方面,你需要这个。例如方法。 如果要调用构造函数,则需要在类约束旁边提供constructor约束:
不幸的是TObject不是一个有效的约束。(据Delphi XE报道)。
|
![]() |
4
0
历史上,原生Delphi没有这样的类型系统(NET有,Delphi Prism中的泛型支持它,就像C#和VB.NET一样)。 解决这个问题是困难的; Allen Bauer gave it a shot implementing a Nullable type ,并且他必须进行一些严重的扭曲,以便仅实现Equals(=)和NotEquals(<gt;)运算符行为,从而同时涵盖引用类型和值类型。 因此,支持这些计划将很困难,但可能是可行的:
|
![]() |
sungjun cho · 函数模板重叠多个匹配项 6 月前 |
![]() |
Amaterastis · 基类接受子类和内部子类的模板参数 7 月前 |
![]() |
111111 · 确定作为模板参数传递的函数的参数类型 7 月前 |
![]() |
Sam · 在LaTeX中将图像添加到预制的投影仪中 7 月前 |
![]() |
user416983 · 模板函数成员作为模板参数 7 月前 |
![]() |
PyOPTProblem · c++如何模板化模板参数的部分实例化? 8 月前 |