public class A
{
public int F()
{
// do something
}
}
public class B : A
{
public static B F()
{
B b = new B();
// do something more with b
b.base.F(); // this doesn't work
b.A.F(); // this doesn't work either
return b;
}
}
调用A.F()的正确语法是什么?请注意B.F()是一个静态函数。调用静态函数内部的基类过载函数?
关于编辑“改名字评论”:
请不要犯错误从此剥离下来的基本例子得出结论。实际上这些函数是用来读取XML的,所有受影响的类的函数签名是ReadXML (XmlNode parent, int id)
。
你试过吗?((A)B).F()'?尽管我的首选解决方案是重命名其中一个F。 :) – Chris
这不能被认为是超载功能的一个坏的使用? – m0skit0
你不能通过这种方式调用,你应该尝试在类A中创建一个构造函数,然后在这个构造函数中调用方法F() – Gandarez