作业
定义一个学生类(Student):私有成员属性(姓名、年龄、分数)、成员方法(无参构造、有参构造、析构函数、show函数)
再定义一个党员类(Party):私有成员属性(党组织活动,组织),成员方法(无参构造、有参构造、析构函数、show函数)。
由这两个类共同派生出学生干部类,私有成员属性(职位),成员方法(无参构造、有参构造、析构函数、show函数),使用学生干部类实例化一个对象,然后调用其show函数进行测试
#include <iostream>
using namespace std;
//定义学生类
class Student
{
private:
//私有成员属性(姓名、年龄、分数)
string name;
int age;
int score;
public:
//无参构造
Student():name(""),age(0),score(0)
{
cout<<"学生无参构造"<<endl;
}
//y有参构造
Student(string a,int b, int c):name(a),age(b),score(c)
{
cout<<"学生有参构造"<<endl;
}
//析构
~Student(){}
//定义成员函数访问私有成员变量
void Show()
{
cout<<"name = "<<name<<endl;
cout<<"age = "<<age<<endl;
cout<<"score = "<<score<<endl;
}
};
//定义党员类
class Party
{
private:
//私有成员属性(党组织活动,组织)
string act;
string org;
public:
//无参构造
Party():act(""),org("")
{
cout<<"组织无参构造"<<endl;
}
//有参构造
Party(string a,string b):act(a),org(b)
{
cout<<"组织有参构造"<<endl;
}
//析构
~Party(){}
//定义成员函数访问私有成员变量
void show()
{
cout<<"act = "<<act<<endl;
cout<<"arg = "<<org<<endl;
}
};
//派生学生干部类
class Cader: public Student,public Party
{
private:
//私有属性,职位
string pos;
public:
//无参构造
Cader():pos("")
{
cout<<"干部无参构造"<<endl;
}
//有参构造
Cader(string a,int b,int c,string d,string e,string f):Student(a,b,c),Party(d,e),pos(f)
{
cout<<"干部有参构造"<<endl;
}
//定义成员函数访问私有成员变量
void show()
{
Student::Show();
Party::show();
cout<<"pos = "<<pos<<endl;
}
};
int main()
{
Cader s1("yangxuan",18,100,"shouqian","yuanyuan","banzhuren");
s1.show();
return 0;
}