2创建项目
- 创建新项目
- 添加文件
3创建管理类
管理类负责的内容如下:
- 与用户的沟通菜单界面
- 对职工增删改查的操作
- 与文件的读写交互
3.1头文件实现
#pragma once //防止头文件重复包含
#include<iostream> //包含输入输出流头文件
using namespace std; //使用标准命名空间
class WorkManager
{
public:
WorkManager();
~WorkManager();
};
3.2源文件实现
#include"workManager.h"
WorkManager::WorkManager()
{
}
WorkManager::~WorkManager()
{
}
4菜单功能
功能描述:与用户的沟通界面
4.1添加成员函数
在管理类workerManager.h中添加成员函数
class WorkManager
{
public:
//构造函数
WorkManager();
//展示菜单
void Show_Menu();
//析构函数
~WorkManager();
};
4.2菜单功能实现
在管理类workManager.cpp中实现Show_Menu()函数
void WorkManager::Show_Menu()
{
cout << "*****************************" << endl;
cout << "******欢迎使用职工系统*******" << endl;
cout << "****** 0.退出管理系统 *******" << endl;
cout << "****** 1.增加职工信息 *******" << endl;
cout << "****** 2.显示职工信息 *******" << endl;
cout << "****** 3.删除离职职工 *******" << endl;
cout << "****** 4.修改职工信息 *******" << endl;
cout << "****** 5.查找职工信息 *******" << endl;
cout << "****** 6.按照编号排序 *******" << endl;
cout << "****** 7.清空所有文档 *******" << endl;
cout << "*****************************" << endl;
cout << endl;
}
4.3测试菜单功能
在职工管理系统.cpp中测试菜单功能
#include<iostream>
using namespace std;
#include"workManager.h"
int main()
{
//实例化管理者对象
WorkManager wm;
//调研展示菜单成员函数
wm.Show_Menu();
system("pause");
return 0;
}
5退出功能
5.1提供功能接口
在main函数中提供分支选择,提供每个功能接口
int main()
{
//实例化管理者对象
WorkManager wm;
int choice = 0; //用来存储用户的选项
while (true)
{
//调研展示菜单成员函数
wm.Show_Menu();
cout << "请输入您的选择:" << endl;
cin >> choice; //接受用户的选择
switch (choice)
{
case 0: //退出
wm.ExitSystem();
break;
case 1: //增加职工
break;
case 2: //显示职工
break;
case 3: //删除职工
break;
case 4: //修改职工
break;
case 5: //查找职工
break;
case 6: //排序职工
break;
case 7: //清空文档
break;
default:
system("cls");//清屏操作
break;
}
}
system("pause");
return 0;
}
5.2实现退出功能
在workerManager.h中提供退出系统的成员函数void exitSystem();
在workerManager.cpp中提供具体的功能实现
//退出系统
void WorkManager::ExitSystem()
{
cout << "欢迎下次再使用" << endl;
system("pause");
exit(0); //退出程序
}
5.3测试功能
在main函数分支0选项中,调用退出程序的接口
6创建职工类
6.1创建职工抽象类
头文件中创建worker.h文件并且添加如下代码:
#pragma once
#include<iostream>
using namespace std;
#include<string>
//职工抽象类
class Worker
{
public:
//显示个人信息
virtual void showInfo() = 0;
//获取岗位名称
virtual string getDeptName() = 0;
//职工编号
int m_Id;
//职工姓名
string m_Name;
//部门编号
int m_DeptId;
};
6.2创建普通员工类
普通员工类继承职工抽象类,并重写父类中纯虚函数
在头文件和源文件的文件夹下分别创建employee.h和employee.cpp文件
头文件
//普通员工文件
#pragma once
#include<iostream>
using namespace std;
#include"worker.h"
class Employee :public Worker
{
public:
//构造函数
Employee(int id, string name, int dId);
//显示个人信息
virtual void showInfo();
//获取岗位名称
virtual string getDeptName();
};
源文件
#include"employee.h"
//构造函数
Employee::Employee(int id, string name, int dId)
{
this->m_Id = id;
this->m_Name = name;
this->m_DeptId = dId;
}
//显示个人信息
void Employee::showInfo()
{
cout << "职工编号:" << this->m_Id
<< "\t职工姓名:" << this->m_Name
<< "\t岗位:" << this->getDeptName()
<< "\t岗位职责:完成经理交给的任务" << endl;
}
//获取岗位名称
string Employee::