#include
using namespace std;
class X {
public:
void show() {
cout<<"X"<class Y {
public:
void show() {
cout<<"Y"<void show2() {
cout<<"Y2"<class Z: public X, private Y {
public:
void show() {
cout<<"Z"<// 访问申明
Y::show2; // 访问申明
};
int main() {
Z obj;
obj.show(); // 输出Z
obj.X::show(); // 输出X
// 希望通过obj调用Y::show(), 使用obj.Y::show()会报错
obj.show2(); // 输出Y2
return 0;
}
私有的,不让外部调用,那你就加个public的接口函数好了啊
#include <iostream>
using namespace std;
class X {
public:
void show() {
cout << "X" << endl;
}
};
class Y {
public:
void show() {
cout << "Y" << endl;
}
void show2() {
cout << "Y2" << endl;
}
};
class Z : public X, private Y {
public:
void show() {
cout << "Z" << endl;
}
void getshow()
{
Y::show();
Y::show2();
}
};
int main() {
Z obj;
obj.show(); // 输出Z
obj.X::show(); // 输出X
obj.getshow();
return 0;
}