#include<iostream>
#include<string>
using namespace std;
class Student{
public:
void get_value();
void display();
private:
int num;
string name;
char sex;
};
class Student1:private Student{ //私有继承
public:
void get_value_1();
void display_1();
private:
int age;
string addr;
};
void Student1::get_value_1(){
get_value(); //由于是私有继承,所以get_value是Student1的私有成员
cin>>age>>addr;
}
void Student1::display_1(){
display(); //由于是私有继承,所以display()是Student1的私有成员
// cout<<"num:"<<num<<endl; //不能引用基类的私有成员
// cout<<"name:"<<name<<endl; //不能引用基类的私有成员
// cout<<"sex:"<<sex<<endl; //不能引用基类的私有成员
cout<<"age:"<<age<<endl;
cout<<"address:"<<addr<<endl;
}
void Student::get_value(){
cout<<"enter num ,name,sec"<<endl;
cin>>num>>name>>sex ;
}
void Student::display(){
cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
}
int main(){
Student1 stud;
stud.get_value_1(); //共有成员调用
stud.display_1(); //共有成员调用
return 0;
}
#include<string>
using namespace std;
class Student{
public:
void get_value();
void display();
private:
int num;
string name;
char sex;
};
class Student1:private Student{ //私有继承
public:
void get_value_1();
void display_1();
private:
int age;
string addr;
};
void Student1::get_value_1(){
get_value(); //由于是私有继承,所以get_value是Student1的私有成员
cin>>age>>addr;
}
void Student1::display_1(){
display(); //由于是私有继承,所以display()是Student1的私有成员
// cout<<"num:"<<num<<endl; //不能引用基类的私有成员
// cout<<"name:"<<name<<endl; //不能引用基类的私有成员
// cout<<"sex:"<<sex<<endl; //不能引用基类的私有成员
cout<<"age:"<<age<<endl;
cout<<"address:"<<addr<<endl;
}
void Student::get_value(){
cout<<"enter num ,name,sec"<<endl;
cin>>num>>name>>sex ;
}
void Student::display(){
cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
}
int main(){
Student1 stud;
stud.get_value_1(); //共有成员调用
stud.display_1(); //共有成员调用
return 0;
}