1> 普通变量的名字覆盖
2> 派生时发生的名字覆盖
只是因为名字被覆盖,就导致子类不能派生基类的一些函数。
编译器如此处理,是为了在你重定义“公有派生 ”来的函数族时,不小心漏掉其中一两个。但我们在实践中,常常是并不想重定义所有的函数的。
解决的方法是使用using:
加上这两句,编译运行就没有问题了。
私有继承 的时候,情况是不同的:
1> 普通变量的名字覆盖
2> 派生时发生的名字覆盖
只是因为名字被覆盖,就导致子类不能派生基类的一些函数。
编译器如此处理,是为了在你重定义“公有派生 ”来的函数族时,不小心漏掉其中一两个。但我们在实践中,常常是并不想重定义所有的函数的。
解决的方法是使用using:
加上这两句,编译运行就没有问题了。
私有继承 的时候,情况是不同的: