我有以下课程:
class A {
public:
virtual void f() {}
};
class B : public A{
public:
void f(int x) {}
};
Run Code Online (Sandbox Code Playgroud)
如果我说
B *b = new B();
b->f();
Run Code Online (Sandbox Code Playgroud)
编译器说错误C2660:'B :: f':函数不带0个参数.不应该B中的函数超载它,因为它是一个虚函数?虚拟函数会像这样被隐藏吗?
编辑:我的确意味着从A继承B,它显示了相同的行为.