📄 mulvinhr.cpp
字号:
//这个程序在本书所带软盘中。文件名为MULVINHR.CPP
//这个程序利用多级继承导出两级导出类并显示它们各自的信息。
#include <iostream.h>
#include <string.h>
class worker { //定义基类worker
public:
worker(char *name, int age, float wage);
void show_worker(void);
private:
char name[64];
int age;
float wage;
};
worker::worker(char *name, int age, float wage)
{
strcpy(worker::name, name);
worker::age = age;
worker::wage = wage;
}
void worker::show_worker(void)
{
cout << endl << "姓名: " << name << endl;
cout << "年龄: " << age << endl;
cout << "工资: " << wage << endl;
}
class supervisor : public worker { //定义导出类supervisor
public:
supervisor(char *name, int age, char *phone, float wage);
void show_supervisor(void);
private:
char phone[64];
};
//导出类supervisor继承了基类worker的构造函数
supervisor::supervisor(char *name, int age, char *phone, float wage) :
worker(name, age, wage)
{
strcpy(supervisor::phone, phone); //新增添的信息
}
void supervisor::show_supervisor(void)
{
show_worker(); //调用基类成员子程序
cout << "电话: " << phone << endl; //并显示新信息
}
class manager : public supervisor { //从基类supervisor导出manager
public:
manager(char *name, int age, char *phone, float wage,
char *office, char *securetary);
void show_manager(void);
private:
char office[64];
char securetary[40];
};
//导出类manager继承了基类supervisor的构造函数
manager::manager(char *name, int age, char *phone, float wage,
char *office, char *securetary) : supervisor(name, age, phone, wage)
{
strcpy(manager::office, office); //新增添的信息
strcpy(manager::securetary, securetary);
}
void manager::show_manager(void)
{
show_worker(); //调用基类成员子程序
cout << "办公室: " << office << endl; //并显示新信息
cout << "秘书: " << securetary << endl;
}
void main(void)
{
worker janitor("Ken Smith", 43, 650.89);
supervisor team_lead("Jon Wong", 36, "788-1616", 989.34);
manager boss("Betty Louis", 30, "555-2121", 2389.68, "Room 3B", "Betty King");
janitor.show_worker();
team_lead.show_supervisor();
boss.show_manager();
}
/* 这个程序运行后将显示如下输出结果:
姓名: Ken Smith
年龄: 43
工资: 650.89
姓名: Jon Wong
年龄: 36
工资: 989.34
电话: 788-1616
姓名: Betty Louis
年龄: 30
工资: 2389.68
办公室: Room 3B
秘书: Betty King
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -