问题描述
在C#中,如果我有一个类A,一个类B,类B继承类AclassA{}classB:A{}有这么一个函数voidfunction(refAa){};在函数调用的时候Aa=newA();function(refa);这个行Ab=newB();function(refb);这个报错。按理说父类定义的类型,传递子类的值是可以的。为什么这个报错?
解决方案
解决方案二:
报啥错,编译没错,是你代码错了吧
解决方案三:
refBnotisrefA
解决方案四:
没有问题:usingSystem;usingSystem.Text;namespaceConsoleApplication1{classA{}classB:A{}classProgram{voidfunction(refAa){}voidtest(){Aa=newA();function(refa);Ab=newB();function(refb);}staticvoidMain(string[]args){}}}
解决方案五:
function里面的问题吧
解决方案六:
引用2楼hdt的回复:
refBnotisrefA
++
时间: 2024-10-29 02:52:59