l7_12.cpp

来自「《C++程序设计教程》电子教案及例题源码」· C++ 代码 · 共 75 行

CPP
75
字号
#include <iostream.h>
#include <string.h>
class CStaff 
{
protected:
	int number;
	char name[10];
	int age;
public:
	CStaff(int num, char *na, int a)
	{
		number = num;
		age = a;
		strcpy(name, na);
	}
	void Display()
	{
		cout << name << " is a Staff " << age << " yeas old, "  << endl;
	}
};

class CTeacher : virtual public CStaff 
{
protected:
	char zch[10];
public:
	CTeacher(int num, char *na, int a, char *zc) : CStaff(num, na, a)
	{
		strcpy(zch,zc);
	}
	void Display()
	{
		cout << name << " is a Teacher " << age << " yeas old, " << zch << endl;
	}
};

class CManagement : virtual public CStaff 
{
protected:
	char zw[10];
public:
	CManagement(int num, char *na, int a, char *z) : CStaff(num, na, a)
	{
		strcpy(zw,z);
	}
	void Display()
	{
		cout << name << " is a management " << age << " yeas old, " << zw << endl;
	}
};

class CTeacherManagement : public CTeacher,public CManagement 
{
public:
	CTeacherManagement(int num, char *na, int a, char *zc,char *z):CStaff(num, na, a),CTeacher(num, na, a,zc),CManagement(num, na, a,z)
	{
	}
	void Display()
	{
		cout << name << " is a Teacher management " << age << " yeas old, " << zch << "," << zw << endl;
	}
};

void main()
{
	CStaff   s1(101,"Zhao",20);
	CTeacher t1(102,"Zhang",30,"Lecture");
	CManagement m1(103,"Wang",35,"zhuren");
	CTeacherManagement tm1(104,"Li",40, "Peofessor", "zhuren");
	s1.Display();
	t1.Display();
	m1.Display();
	tm1.Display();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?