方式一:使用同名成员
在派生类中重新定义一个和基类名字相同的成员,这样相当于狸猫换太子,在派生类中用这个名字就是狸猫,如果想访问太子,那么需要使用 基类名:: 的方式去访问太子
方式二:访问声明
把基类的成员放到派生类的成员中一起声明
比如:
class A{
void print();
}
class B: private A{
public:
A::print;
}
访问声明机制可以在私有派生类中个别调整从基类继承下来的成员,但是基类的私有成员不能使用访问声明
#include<bits/stdc++.h>
using namespace std;
class A{
public:
int x1;
protected:
int x2;
private:
int x3;
};
class B:public A{
public:
A::x1;
A::x2;
A::x3;//三种继承方式都是这里报错
protected:
int b;
private:
int a;
};
int main(){
return 0;
}