【发布时间】:2020-10-27 10:44:58
【问题描述】:
在以下代码中:
请告诉我为什么只调用派生类成员函数,是因为hiding吗?还有为什么b.func(1.1);没有报错,参数是int x。
#include <bits/stdc++.h>
using namespace std;
class A {
public:
virtual int func(float x)
{
cout << "A";
}
};
class B : public A {
public:
virtual int func(int x)
{
cout << "B";
}
};
int main()
{
B b;
b.func(1); // B
b.func(1.1); // B
return 0;
}
【问题讨论】:
标签: c++ function inheritance overloading method-hiding