当私有继承时,基类的所有p u b l i c成员都变成了p r i v a t e。如果希望它们中的任何一个是可
视的,只要用派生类的p u b l i c选项声明它们的名字即可。
#include <iostream>
using namespace std;
class base{
public:
void f(){
cout << "f()" << endl;
}
void g(){
cout << "g()" << endl;
}
void h(){
cout << "h()" << endl;
}
};
class derive: private base{
public:
base::f;
base::g;
};
void main(){
derive der;
der.f();
der.g();
// der.h(); //error
}
这样,如果想要隐藏这个类的基类部分的功能,则p r i v a t e继承是有用的。