保证跨声明范围的函数重载
class B
{
public:
int f(int i) { cout << "f(int): "; return i+1; }
};
class D : public B
{
public:
using B::f;
double f(double d) { cout << "f(double): "; return d+1.3; }
};
D* pd = new D;
cout << pd->f(2) << '/n';
cout << pd->f(2.3) << '/n';