📄 managerlist.cpp
字号:
// ManagerList.cpp: implementation of the CManagerList class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "ClassSystem.h"
#include "ManagerList.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CManagerList::CManagerList()
{
fence=tail=head=new CManagerNode;
ifstream InManagerFile;
InManagerFile.open("manager.dat",ios::in );
char ManagerName[30];
char Pwd[70];
while(InManagerFile >> ManagerName >> Pwd )
{
Append(ManagerName,Pwd);
}
}
CManagerList::~CManagerList()
{
ofstream OutManagerFile;
OutManagerFile.open("manager.dat",ios::out);
fence = head;
while(head->next != NULL)
{
CManagerNode manager;
remove(manager);
OutManagerFile << manager.m_ManagerName<<"\t"<<manager.m_password<<endl;
}
}
bool CManagerList::Append(char ManagerName[],char Pwd[])
{
tail = tail->next = new CManagerNode(ManagerName,Pwd);
return true;
}
bool CManagerList::find(CString ManagerName,CManagerNode &Manager )
{
fence = head;
while(fence->next != NULL)
{
if(fence->next->m_ManagerName == ManagerName)
{
Manager.m_password = fence->next->m_password;
Manager.m_ManagerName= fence ->next->m_ManagerName;
return true;
}
fence = fence->next;
}
return false;
}
bool CManagerList::remove(CManagerNode &manager)
{
if(fence->next==NULL)//The right partition is empty
{
return false;
}
manager.m_ManagerName = fence->next->m_ManagerName;
manager.m_password = fence->next->m_password;
CManagerNode* ltemp=fence->next;
fence->next=ltemp->next;
if(tail==ltemp)
{
tail=fence;
}
delete ltemp;
return true;
}
bool CManagerList::Append(CString account,CString password)
{
tail = tail->next = new CManagerNode(account,password);
return true;
}
bool CManagerList::GetData(CManagerNode &manager)
{
if(fence->next != NULL && fence != NULL)
{
manager.m_ManagerName = fence->next->m_ManagerName;
manager.m_password = fence->next->m_password;
return true;
}
return false;
}
bool CManagerList::setData(CManagerNode &manager)
{
fence->next->m_password = manager.m_password;
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -