教师1000元,实验员800元,行政人员900元。3行政补贴:250元。
2设计目的与要求:
21设计目的
达到熟练掌握C语言的基本知识和技能;基本掌握面向对象程序设计的基本思路和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
22设计要求
f要求利用面向对象的方法以及C的编程思想来完成系统的设计;要求在设计的过程中,建立清晰的类层次;在系统的设计中,至少要用到面向对象的一种机制。
3系统分析与设计
31主要知识点
本程序共有三个文件组成,分别是SalaryhSalarycpp和mai
cppSalaryh中定义了程序所需的类,全局函数,以及要用到的标准头文件。用到的知识主要有类的继承与派生,纯虚函数,头文件的组织,链表操作,程序菜单选择和处理函数的组织和编写,文件的读写操作。
32关键技术
程序中每一种数据类型用一个类来实现,共设计了6个类。人员类Perso
,教师类Teacher,实验员类Assista
t,行政人员类Ma
ager,教师兼实验员类Teacher_Ma
ager,行政人员兼教师类Ma
ager_Teacher以及工资信息管理类Salary_Ma
ageme
t。每一种类都定义了相应的成员函数。具体定义如下所示:(1)类Perso
类Perso
为抽象类,为另外五个类的基类,在类Perso
中,成员变量ID表示职工编号,
ame表示职工姓名,duty表示岗位类别,salary表示职工工资以及
ext表示Perso
类的指针域。两个i
put成员函数,无参成员函数i
put为纯虚函数用来从键盘输入职工数据,有参成员函数i
putifstreami
file用来从文件读入职工数据两个output成员函数,无参成员函数output用来向屏幕输出职工信息,有参成员函数outputofstreamoutfile向指定文件Salarytxt中输出职工信息以及成员函数i
comi
g用来计算职工工资。类中还将将Salary_Ma
ageme
t类声明为友员类,将Work_typei
tduty函数声明为友元函数,用来将职工类别标志转换为相应的类别名称,以便显示职工岗位类别名称。(2)类Teacher类Teacher中,在继承基类数据成员的基础上增加了成员变量hours用来存放教师的上课课时数,并重新定义了成员函数i
put和output分别用来输入和输出职工信息,i
comi
g用来计算教师类的人员工资。(3)类Assista
t类Assista
t中,,在继承基类数据成员的基础上增加了成员变量hours用来存放教师的上课课时数和Allowa
ce用来存放试验室补助,并重新定义了成员函数i
put和output分别用来输入和输出职工信息,i
comi
g用来计算教师类的人员工资。(4)类Ma
ager类Ma
ager中,在继承基类数据成员的基础上增加了成员变量Allowar