|
|
1
6
只要为这两个列表对象绘制继承方案,您就会清楚地看到为什么InheritsFrom不起作用。在泛型中。我们有:
在你的例子中,我们有:
我们得到了这两棵遗传树:
然后我们有:
如您所见,两种列表类型的唯一共同祖先是TObject! |
|
|
2
1
这是因为您的列表不是从泛型类型从基类继承的类似列表继承的。它们不能像泛型类型那样互相替代。事实上,如果不破坏语言中很多东西所依赖的类型安全性,它们就不可能。
为了理解原因,想象一下将MyList传递给一个期望
有很多方法可以解决这个问题,但是它们还没有在Delphi中实现。希望Delphi团队能尽快着手解决这个问题,因为这将使泛型变得更加有用。 |
|
|
3
1
在Delphi中,构造的类型与其类型参数不协变。
鉴于
|
|
|
4
0
所以不能检查它是否派生自非具体类。 |
|
Fernando Chu · 一个变量有多个可能的类?[关闭] 1 年前 |
|
|
Amaterastis · 基类接受子类和内部子类的模板参数 1 年前 |
|
|
Rishab Negi · 这个关键字在抽象类中是如何工作的 1 年前 |
|
|
dEmigOd · 类层次结构中的运算符重载解析 1 年前 |
|
|
TableTopRug · 如何从Kotlin中的密封类继承? 1 年前 |
|
|
hasdrubal · 抽象基类函数指针python 1 年前 |
|
|
Josh · 通过反思访问孩子的财产 1 年前 |