为什么这是不可能的?
abstract class A
{
public abstract T f<T>();
}
class B<T> : A
{
public override T f()
{
return default (T);
}
}
错误:
does not implement inherited abstract member 'A.f<T>()'
no suitable method found to override
我知道签名必须相同,但从我的角度来看,我认为没有理由认为这是被禁止的。我也知道另一种解决方案是A
通用,而不是它的方法,但由于某种原因它不适合我。