关于泛型和继承的问题

时间:2011-04-08 02:41:45

标签: c# generics reflection inheritance

我有一个来自Derived<T>的课程Base<T>。以下哪个断言是真是假?

typeof(Derived<SomeType>).IsSubclassOf(typeof(Base<SomeType>))
typeof(Derived<>)        .IsSubclassOf(typeof(Base<SomeType>))
typeof(Derived<SomeType>).IsSubclassOf(typeof(Base<>))
typeof(Derived<>)        .IsSubclassOf(typeof(Base<>))

提前致谢

1 个答案:

答案 0 :(得分:0)

在这种情况下,第一个:

typeof(Derived<SomeType>).IsSubclassOf(typeof(Base<SomeType>))

另一个不编译 - 没有它的类型参数就不能引用泛型,例如。

Something<>