问题:黑马职工管理系统遇到的问题--在删除文件里面的信息时,发现信息并不会随之修改;
解决办法:在检查代码的过程中,发现在workermanager.cpp中忘记写上删除后数据同步到文件的代码
this->save;
完整代码:
//------------------删除职工
void WorkerManager::Del_Emp()
{
if (this->m_FileIsEmpty)//为空
{
cout << "文件不存在或者记录为空!" << endl;
}
else
{
//按照职工编号删除
cout << "请输入想要删除的职工编号:" << endl;
int id=0;
cin >> id;
int index = this->IsExist(id);//接受返回值
if (index != -1)//说明职工存在,并且要删除掉index位置上的职工
{
//利用数据前移来删除元素
for (int i = index; i < this->m_EmpNum - 1; i++)
{
this->m_EmpArray[i] = this->m_EmpArray[i + 1];//赋值
}
this->m_EmpNum--;//更新数组中记录人员
this->save();//重要点!!!!!!!!删除后 数据同步到文件中
cout << "删除成功!" << endl;
}
else
{
cout << "删除失败,未找到该职工" << endl;
}
//清屏
system("pause");
system("cls");
}