我也颇有几分搜索的,我以为我听错了图案右侧的抽象方法,但它仍然没有编制,我真的很感激手...C#覆盖通用型
我有一个泛型类:
public abstract class CTopology<TTopology> { protected abstract TTopology Pcalc(); public TTopology PLosses() { do something return this.PCalc() }
,然后派生类
public class CInverter : CTopology<CPBoost>
{
protected override CPInv PCalc()
{
CPInv Calc = new CPInv();
do something
return Calc;
}
}
现在,我得到这2编译错误:
错误1 'iSine46.CInverter' 不实现继承的抽象构件 'iSine46.CTopology.Pcalc()'
错误2 'iSine46.CInverter.PCalc()':发现重写没有合适的方法
Visual Studio中有智能感知功能与此帮助。在派生类中,输入“override PCalc”并按回车。 Visual Studio将使用正确的修饰符来放入正确的方法或属性。 – Grax 2014-09-11 18:02:03