📄 database.cpp
字号:
#include "DataBase.h"
CDataBase::CDataBase(void):m_sName("无名")
{
}
CDataBase::CDataBase(GUtString name):m_sName(name)
{
}
CDataBase::~CDataBase(void)
{
}
bool CDataBase::SetFormat(CRecordFormat &format)
{
if(format.IsEmpty())
{
std::cout<<"设置数据库的格式失败!(格式为空)"<<std::endl;
return false;
}
else
{
m_Format=format;
return true;
}
}
CRecordFormat CDataBase::GetFormat()
{
return m_Format;
}
bool CDataBase::SetRecord(int index)
{
if (index<0||index>=Size())
{
std::cout<<"修改记录失败!(输入数字有误)"<<std::endl;
return false;
}
else
{
std::cout<<"对第"<<index<<"条记录进行修改"<<std::endl;
for (int i=0;i<m_Format.Size();i++)
{
std::cout<<m_Format[i]<<":\t"<<(*this)[index][i]<<std::endl;
}
char *temp1=new char[255];
char *temp2=new char[255];
input:
std::cout<<"请选择:";
std::cin>>temp1;
std::cout<<"请输入:";
std::cin>>temp2;
if (!(*this)[index].SetCellRecord((GUtString)temp1,(GUtString)temp2))
goto input;
else
{
std::cout<<"修改记录成功!"<<std::endl;
return true;
}
}
}
bool CDataBase::AddRecord(CDataRecord &record)
{
PushBack(record);
std::cout<<"添加记录成功!"<<std::endl;
return true;
}
bool CDataBase::DeleteRecord(int index)
{
if (index<0||index>=Size())
{
std::cout<<"删除记录失败!(不存在指定记录)"<<std::endl;
return false;
}
else
{
CDataRecord temp=(*this)[index];
Erase(temp);
std::cout<<"删除记录成功!"<<std::endl;
return true;
}
}
GUtString CDataBase::GetName()
{
return m_sName;
}
bool CDataBase::operator==(CDataBase &dataBase)const
{
if(m_Format==dataBase.m_Format&&m_sName==dataBase.m_sName)
return true;
else
return false;
}
void CDataBase::AddFormatCell(GUtString &cell)
{
m_Format.AddCell(cell);
}
void CDataBase::AddRecordCell(GUtString &cell)
{
(*this)[Size()-1].PushBack(cell);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -