#include <iostream>
class Base
{
public:
virtual void func()
{
cout << "Base!" << endl;
}
};
class Derived :public Base
{
public:
virtual void func(int a)
{
cout << "Derived!" << endl;
}
};
Derived derived;
int main() {
derived.func(1);//此句未报错
derived.func();//此句编译器提示少参数
return 0;
}
看了下大佬关于虚函数指针与虚函数表的解释
按照大佬的思路,Base::func()应该在Derived::func(int)之前,为什么编译器却默认匹配Derived::func(int)呢?
求大佬解惑