【发布时间】:2018-10-27 20:20:10
【问题描述】:
我有一个通用类Foo<T> where T: SomeBaseType。
在T 是SpecificDerivedType 的特定情况下,我希望我的班级有一个额外的方法。
类似:
class Foo<T> where T: SomeBaseType
{
//.... lots of regular methods taking T, outputting T, etc.
//in pseudo code
void SpecialMethod() visible if T: SpecificDerivedType
{
//...code...
}
}
我怎样才能做到这一点?
【问题讨论】:
-
我不认为这是可能的,但在这里评论看看会发生什么
-
您可以将
SpecialMethod设为Foo<SpecificDerivedType>的扩展方法。