管理系统需求文档
本系统利用C++来实现一个基于多态的职工管理系统,可用于管理公司内所有员工的信息。
公司中有三类职工:普通员工,经理,老板;每个员工对应的信息有: 职工编号、职工姓名、职工岗位和员工职责。
管理系统主要实现的功能如下:
- 退出管理系统:退出当前系统
- 添加职工信息:实现批量添加职工的功能,将信息录入文件中,职工信息为:职工编号、职工姓名、职工岗位
- 显示职工信息:显示公司中所有职工的信息
- 删除离职职工:按照编号删除指定的职工
- 修改职工信息:按照编号修改指定的职工的信息
- 查找职工信息:按照职工的编号或者职工的姓名查找对应职工的信息
- 按照编号排序:按照职工编号排序,可以选择升序或者降序。
- 清空所有文档:清空文件中记录的所有职工的信息(清空前需要再次确认,防止误删)
开始界面:
类与类图:
此程序共用到5个类:
- WorkerManger 职工管理类,主要功能的实现都在此类中
- Worker 职工类(抽象类),定义职工的基本信息
- OrdinaryWorker 普通职工类,实现普通职工的特殊职责
- Manager 经理类,实现经理的特殊职责
- Boss 老板类,实现老板的特殊职责
各个功能的实现
为用到面向对象,此系统将职工管理封装成一个WorkerManger类,该类的成员函数实现系统的各项功能(在主函数中创建对象并调用)
0 主函数
//main.cpp
#include <iostream>
#include "WorkerManger.h"
#include "Worker.h"
#include "OrdinaryWorker.h"
#include "Manger.h"
#include "Boss.h"
using namespace std;
int main()
{
WorkerManger wm; //初始化管理对象
while(1)
{
// // 测试代码
// Worker * ow = NULL;
// ow = new OrdinaryWorker("xx", 1, "普通员工");
// ow->showInfo();
// delete ow;
//
// ow = new Manger("ll", 2, "经理");
// ow->showInfo();
// delete ow;
//
// ow = new Boss("xl", 3, "老板");
// ow->showInfo();
// delete ow;
wm.showMenu(); //显示菜单
//定义选择变量
int select;
cout << "请输入您的选择:";
cin >> select;
switch(select)
{
case 1:
wm.ExitSystem();
break;
case 2:
wm.AddWorker();
break;
case 3:
wm.showWorker();
break;
case 4:
wm.deleteWorker();
break;
case 5:
wm.modifyWorker();
break;
case 6: //查找
wm.searchWorker();
break;
case 7