/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013.烟台大学计算机学院。
* All rights reserved.
* 文件名称:
* 作 者:崔俊
* 完成日期:2014 年 5月 20日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:
* 问题描述:
* 程序输出:
*/
#include <iostream>
using namespace std;
//声明公用基类
class Teacher
{
public:
Teacher(string nam,int a,int s,string d,string num,string t)
{
name=nam;
age=a;
sex=s;
department=d;
number=num;
title=t;
}
void display();
protected:
string name;
int age;
int sex;
string department;
string number;
string title;
};
class Cadre
{
public:
Cadre(string nam,int a,int s,string d,string num,string p)
{
name=nam;
age=a;
sex=s;
department=d;
number=num;
post=p;
}
protected:
string name;
int age;
int sex;
string department;
string number;
string post;
};
class Teacher_Cadre:virtual public Teacher,virtual public Cadre
{
public:
Teacher_Cadre(string nam,int a,int s,string d,string num,string t,string p,float w)
:Teacher(nam,a,s,d,num,t),Cadre(nam,a,s,d,num,p),wage(w) {}
void show()
{
display();
cout<<"职务:"<<post<<endl;
cout<<"工资:"<<wage<<endl;
}
private:
float wage;
};
void Teacher::display()
{
string Sex;
if(sex==0)
Sex="women";
else
Sex="man";
cout<<"姓名:"<<name<<endl;
cout<<"年龄:"<<age<<endl;
cout<<"性别:"<<Sex<<endl;
cout<<"地址:"<<department<<endl;
cout<<"电话:"<<number<<endl;
cout<<"职称:"<<title<<endl;
}
int main()
{
Teacher_Cadre t("张三",25,1,"烟台","20135850","教授","班主任",7000);
t.show();
return 0;
}