当前位置 : 主页 > 编程语言 > c语言 >

【内附源码和文档】C++实现建议员工管理系统

来源:互联网 收集:自由互联 发布时间:2023-09-03
一、题目要求 设计一个虚基类员工类Staff,包含编号、姓名和年龄等保护数据成员以及相关的成员函数。 由Staff派生出销售员类Salesman,包含销售额等保护数据成员以及相关的成员函数

一、题目要求

  1. 设计一个虚基类员工类Staff,包含编号、姓名和年龄等保护数据成员以及相关的成员函数。
  2. 由Staff派生出销售员类Salesman,包含销售额等保护数据成员以及相关的成员函数。
  3. 由Staff派生出经理类Manager。
  4. 由Salesman和Manager派生出销售经理类SalesManager。
  5. 利用文件处理方式实现对公司人员(包括销售员、经理和销售经理)进行管理,具有增加数据、更新数据、查询数据、删除数据以及重组文件的功能。(删除数据在记录中做删除标志,重组文件指在物理上删除有删除标志的记录)另外还要分别统计这三类员工的人数以及所有员工的总数。

二、设计思路

  1. 分析题目要求,分别建立了四个类:虚基类Staff、公有继承类Salesman、公有继承类Manager和公有继承类SalesManager。
  2. 将所有员工的记录都放在同一个txt文件中,每个员工记录占用一行。
  3. 文件在程序一开始全部读入vector容器中,并在程序结束前统一写回文件。
  4. 所有字符串统一采用string类,从而简化程序设计。
  5. 在虚基类Staff中定义虚函数updateProperty(更新属性值函数)、虚函数output(输出函数)和虚函数outputWithNumber(输出函数),并在派生类中进行了覆盖以达到动态多态性。
  6. 使用虚基类和虚函数的特性,利用动态联编使基类指针所要调用的派生类函数。
  7. 为了在主程序少写if-else语句块和switch语句块,将要更新的属性类型和属性值均作为参数传入函数updateProperty(更新属性值函数)并对该函数进行了重载。

三、类的UML图

【内附源码和文档】C++实现建议员工管理系统_虚函数

四、运行结果

4.1 文件初始内容

【内附源码和文档】C++实现建议员工管理系统_数据_02

4.2 查询未修改前的数据

【内附源码和文档】C++实现建议员工管理系统_虚函数_03

完整的源码和详细的文档,上传到了 【WRITE-BUG数字空间】,需要的请自取:

https://www.writebug.com/code/0c7b1e0e-c792-11ed-8124-6479f0e5e323/#

网友评论