基于多态的职工管理系统(12)------修改职工
功能描述:能够按照职工的编号对职工信息进行修改并保存
12.1 修改职工函数声明
在workerManager.h中添加成员函数 void Mod_Emp();
//修改职工 void Mod_Emp();
在workerManager.cpp中实现成员函数 void Mod_Emp();
//修改职工 void WorkerManager::Mod_Emp() { if (this->m_FileIsEmpty) { cout << "文件不存在或记录为空!" << endl; } else { cout << "请输入修改职工的编号:" << endl; int id; cin >> id; int ret = this->IsExist(id); if (ret != -1) { //查找到编号的职工 delete this->m_EmpArray[ret]; int newId = 0; string newName = ""; int dSelect = 0; cout << "查到: " << id << "号职工,请输入新职工号: " << endl; cin >> newId; cout << "请输入新姓名: " << endl; cin >> newName; cout << "请输入岗位: " << endl; cout << "1、普通职工" << endl; cout << "2、经理" << endl; cout << "3、老板" << endl; cin >> dSelect; Worker * worker = NULL; switch (dSelect) { case1: worker = new Employee(newId, newName, dSelect); break; case2: worker = new Manager(newId, newName, dSelect); break; case 3: worker = new Boss(newId, newName, dSelect); break; default: break; } //更改数据 到数组中 this->m_EmpArray[ret]= worker; cout << "修改成功!" << endl; //保存到文件中 this->save(); } else { cout << "修改失败,查无此人" << endl; } } //按任意键 清屏 system("pause"); system("cls"); }
在main函数分支 4 选项中,调用修改职工接口

测试1 - 修改不存在职工情况

测试2 - 修改存在职工情况,例如将职工 "李四" 改为 "赵四"

修改后再次查看所有职工信息,并确认修改成功

再次确认文件中信息也同步更新


浙公网安备 33010602011771号