C++第8次实验(提高班)—多继承(参考答案)

来源:互联网 发布:mac 安装mysql tar.gz 编辑:程序博客网 时间:2024/06/15 15:05

项目1

virtual public
virtual public
public Leader,public Engineer


项目2

#include<string>#include <iostream>using namespace std;class Teacher{public:    Teacher(string nam,int a,string s,string tit);    void display();protected:    string name;    int age;    string sex;    string title;};Teacher::Teacher(string nam,int a,string 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,string s,string p);    void display();protected:    string name;    int age;    string sex;    string post;};Cadre::Cadre(string nam,int a,string 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,string s,string tit,string p,float w);    void show( );private:    float wage;};Teacher_Cadre::Teacher_Cadre(string nam,int a,string 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;}


阅读全文
1 0
原创粉丝点击