c++并没有要求基类的每个虚函数都要在派生类中实现,但是有些时候我们把基类的这些虚函数都
在派生类中描述一下(方便使用者查看),但是一旦我们把虚函数声明出来,那就意味着我们做了
重载动作,此时就逼得我们不得不写出自己的虚函数重载版本,但是很多时候我们还是想使用基类
版本,那么此时就有两种方案:

方案一:

1)在派生类的重载版本中使用域访问运算符调用基类版本
class A{
virtual void func(){
}
virtual void func(int){
}
}
class B:public A{
void func(){
A::func();
}
void func(int i){
A::func(i);
}
}
可以看到,如果基类虚函数有N个,那么派生类就要写N次,这明显很啰嗦,2)便可以
使用大粒度的控制来进行粗糙的批量映射。

方案二:

2)使用using来进行说明
class A{
virtual void func(){
}
virtual void func(int){
}
}
class B:public A{
using A::func; //注意,这里仅仅是函数名
//这一个动作就代表所有名为func的虚函数都
//使用基类版本,相当于创建了一个 “软连接”
//然而使用时还是要根据参数列表来判断使用基类的哪个版本
}