⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 managerlist.cpp

📁 一个用mfc开发的基于文本数据库的学生信息管理系统
💻 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 + -