資源簡介
用C++的容器和文件實現的職工管理系統
代碼片段和文件信息
#include?
#include?
#include?
#include?
#include? //vector本質是動態數組
#include?
#include? //sort()函數在這個頭文件中
using?namespace?std;
class?Person
{
public:
string?name;
string?tel;
string?adr;
string?ID; //身份證號
public:
Person();
Person(string?string?string?string);
};
Person::Person()
{}
Person::Person(string?m_name?string?m_tel?string?m_adr?string?m_ID)
{
name?=?m_name;
tel?=?m_tel;
adr?=?m_adr;
ID?=?m_ID;
}
class?Worker?:public?Person
{
public:
double?code; //工號
string?section; //部門
double?salary; //工資
string?email; //郵箱
public:
Worker();
Worker(string?string?string?string?double?string?double?string);
};
Worker::Worker()
{}
Worker::Worker(string?m_name?string?m_tel?string?m_adr?string?m_ID?double?cd?string?sec?double?sala?string?ema)?:Person(m_name?m_tel?m_adr?m_ID)
{
code?=?cd;
section?=?sec;
salary?=?sala;
email?=?ema;
}
class?Control
{
public:
Control();
void?menu(); ??//主菜單界面
void?find(std::vector?&ver);????????????//查詢信息
void?edit(std::vector?&ver);????????????//修改信息
void?del(std::vector?&ver);?????????????//刪除信息
void?insert(std::vector?&ver);?????????//添加信息
void?list(std::vector&ver);??????????????//瀏覽信息
void?sortlist(std::vector&ver);
void?readfile(std::vector&ver);
void?writefile(std::vector&ver);
};
void?Control::readfile(std::vector&ver)
{
ifstream?infile(“record.txt“?ios::in); //定義文件流對象用輸入輸出方式打開磁盤文件,文件可讀可寫
if?(!infile)
{
cerr?<“讀取文件出錯,可能是沒有此文件“?< return;
}
if?(infile.eof()) //判斷文件是否到達尾部
{
cout?<“?文件為空?“?< return;
}
while?(!infile.eof())
{
Worker?wo;
infile?>>?wo.name?>>?wo.tel?>>?wo.adr?>>?wo.ID?>>?wo.code?>>?wo.section?>>?wo.salary?>>?wo.email;
ver.push_back(wo);
}
}
void?Control::writefile(std::vector&ver)
{
ofstream?outfile(“record.txt“?ios::out); //定義文件流對象用輸入輸出方式打開磁盤文件,文件可讀可寫
if?(!outfile) //打開文件失敗
{
cerr?<“open?error!“?< exit(1);
}
vector::iterator?it?=?ver.begin(); //定義一個迭代器,通過它將容器內容寫入文件
for?(;?it?!=?ver.end();?it++)
{
outfile?<‘\t‘?<(*it).name?<‘\t‘?<(*it).tel?<‘\t‘?<(*it).adr?<‘\t‘?<(*it).ID?<‘\t‘?<(*it).code?<‘\t‘?<(*it).section?<‘\t‘?<(*it).salary?<‘\t‘?<(*it).email;
}
}
Control::Control()
{}
void?Control::menu()???????//主菜單界面
{
cout?< cout?<“***************************“?< cout?<“*?容器實現的職工管理系統??*“?< cout?<“*?(1)增加???????(2)刪除???*“?< cout?<“*?(3)修改???????(4)查詢???*“?< cout?<“*?(5)顯示???????(6)排序???*“?< cout?<“*?(0)退出?????????????????*“?< cout?<“***************************“;
cout?< c
評論
共有 條評論