作业:
定义一个学生类(Student):私有成员属性(姓名、年龄、分数)、成员方法(无参构造、有参构造、析构函数、show函数)
再定义一个党员类(Party):私有成员属性(党组织活动,组织),成员方法(无参构造、有参构造、析构函数、show函数)。
由这两个类共同派生出学生干部类,私有成员属性(职位),成员方法(无参构造、有参构造、析构函数、show函数),使用学生干部类实例化一个对象,然后调用其show函数进行测试
#include <iostream>
using namespace std;
//定义Student类
class Student
{
private:
string name;
int age;
float score;
public:
//student无参构造
Student(){cout<<"student::无参构造"<<endl;}
//student有参构造
Student(string n,int a,float s):name(n),age(a),score(s){
cout<<"student::有参构造"<<endl;
}
//student析构函数
~Student(){cout<<"student::析构"<<endl;}
//studet::show
void show()
{
cout<<"name:"<<name<<endl;
cout<<"age:"<<age<<endl;
cout<<"score:"<<score<<endl;
}
};
//定义party类
class Party
{
private:
string activity;
string org;
public:
//party无参构造
Party(){cout<<"party::无参构造"<<endl;}
//party有参构造
Party(string a,string o):activity(a),org(o){
cout<<"party::有参构造"<<endl;
}
//party析构函数
~Party(){cout<<"party::析构"<<endl;}
//party::show
void show()
{
cout<<"党组织活动:"<<activity<<endl;
cout<<"党组织:"<<org<<endl;
}
};
//定义一个Leader类,继承Student类和Party类
class Leader:public Student,public Party
{
private:
string pos;
public:
//Leader无参构造
Leader(){cout<<"Leader::无参构造"<<endl;}
//Leader有参构造
Leader(string n,int a,float s,string m,string q,string p):Student(n,a,s),Party(m,q),pos(p)
{
cout<<"Leader::有参构造"<<endl;
}
//Leader析构函数
~Leader(){cout<<"Leader::析构"<<endl;}
//Leader::show
void show()
{
Student::show();
Party::show();
cout<<"职位:"<<pos<<endl;
}
};
int main()
{
Leader l1("ldx",18,100,"组织活动"," 共青团","共青团员");
l1.show();
return 0;
}
运行结果: