0
我正在写一些C++代码的样子:继承相关的C++编译错误
class Base {
public:
virtual ~Base() {}
void foo(int a) {}
virtual void foo(int a, int b) = 0;
};
class Derived: public Base {
public:
virtual void foo(int a, int b) {}
};
int main()
{
Derived o;
o.foo(1);
return 0;
}
这将产生以下错误:
candidate expects 2 arguments, 1 provided
起初我以为一个compilator错误的,但在尝试过不同的结果并总是得到相同的结果后,我意识到它必须是标准的一部分。 有人可以指出这个错误的原因吗?