定义一个学生类(Student):私有成员属性(姓名、年龄、分数)、成员方法(无参构造、有参构造、析构函数、show函数) 再定义一个党员类(Party):私有成员属性(党组织活动,组织),成员方法(无参构造、有参构造、析构函数、show函数)。 由这两个类共同派生出学生干部类,私有成员属性(职位),成员方法(无参构造、有参构造、析构函数、show函数),使用学生干部类实例化一个对象,然后调用其show函数进行测试
#include <iostream>
using namespace std;
class stu//学生类
{
private:
string name;
int age;
double score;
public:
stu(){
cout<<"stu::无参构造"<<endl;
}
stu(string n,int a,double s):name(n),age(a),score(s){
cout<<"stu::有参构造"<<endl;
}
~stu(){
cout<<"stu::析构函数"<<endl;
}
void show()
{
cout<<"stu::name="<<name<<endl;
cout<<"stu::age="<<age<<endl;
cout<<"stu::score="<<score<<endl;
}
};
class party //党员
{
private:
string ppa;
int zuzhi;
public:
party(){
cout<<"party::无参构造"<<endl;
}
party(string p,int z):ppa(p),zuzhi(z){
cout<<"party::有参构造"<<endl;
}
~party(){
cout<<"party::析构函数"<<endl;
}
void show()
{
cout<<"party::ppa="<<ppa<<endl;
cout<<"party::zuzhi="<<zuzhi<<endl;
}
};
//学生干部
class gb:public stu,public party
{
private:
int pos;
public:
gb(){
cout<<"gb::无参构造"<<endl;
}
gb(string n,int a,double s,string p,int z,int po):stu(n,a,s),party(p,z),pos(po)
{
cout<<"gb::有参构造"<<endl;
}
~gb(){
cout<<"gb::析构函数"<<endl;
}
void show()
{
/*cout<<"stu::name="<<name<<endl;
cout<<"stu::age="<<stu::age<<endl;
cout<<"stu::score="<<score<<endl;
cout<<"party::ppa="<<ppa<<endl;
cout<<"party::zuzhi="<<zuzhi<<endl;*/
//stu::show();
//party::show();
cout<<"gb::pos="<<pos<<endl;
//cout<<"gb::zuzhi="<<zuzhi<<endl;
}
};
int main()
{
gb g1("shuage",22,80,"qunpa",9,3);
g1.stu::show();
g1.party::show();
g1.show();
return 0;
}