您的位置:首页 > 编程语言 > C语言/C++

C++实验5-1

2016-05-20 10:12 507 查看
一、问题及代码、

#include<string>
#include <iostream>
using namespace std;
class Teacher      //声明老师类
{
public:
Teacher(string nam,int a,char s,string tit);
void display();
protected:
string name;
int age;
char sex;
string title;

};
//老师类成员函数的定义
Teacher::Teacher(string nam,int a,char s,string tit):
name(nam),age(a),sex(s),title(tit){ }

void Teacher::display()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
cout<<"性别:"<<sex<<endl;
cout<<"职称:"<<title<<endl;
}
//声明干部类
class Cadre
{
public:
Cadre(string nam,int a,char s,string p);
void display();
protected:
string name;
int age;
char sex;
string post;
};
//干部类成员函数的定义
Cadre::Cadre(string nam,int a,char s,string p):
name(nam),age(a),sex(s),post(p){}

void Cadre::display()
{
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
cout<<"性别:"<<sex<<endl;
cout<<"职务:"<<post<<endl;
}
//声明多重公用派生类-教师兼干部类
class Teacher_Cadre:public Teacher,public Cadre
{
public:
Teacher_Cadre(string nam,int a,char s,string tit,string p,float w);
void show( );
private:
float wage;
};

Teacher_Cadre::Teacher_Cadre(string nam,int a,char s,string t,string p,float w):
Teacher(nam,a,s,t),Cadre(nam,a,s,p),wage(w) {}

void Teacher_Cadre::show( )
{
Teacher::display();    //指定域
cout<<"职务:"<<Cadre::post<<endl; //指定域

cout<<"工资:"<<wage<<endl;
}

int main( )
{
Teacher_Cadre te_ca("曾辉",42,'男',"副教授","主任",1534.5);
te_ca.show();
return 0;
}


二、运行结果



三、心得体会

不是太熟练,难度较大。

四、知识点总结

继承函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: