最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++機(jī)房預(yù)約系統(tǒng)實(shí)現(xiàn)流程實(shí)例

 更新時(shí)間:2022年10月25日 08:53:36   作者:彼此沉默  
這篇文章主要介紹了C++機(jī)房預(yù)約系統(tǒng)實(shí)現(xiàn)流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧

1.機(jī)房預(yù)約系統(tǒng)分析

1.1身份簡(jiǎn)介

學(xué)生代表:申請(qǐng)使用機(jī)房

教師:審核學(xué)生的預(yù)約申請(qǐng)

管理員:給學(xué)生、教師創(chuàng)建賬號(hào)

1.2機(jī)房簡(jiǎn)介

1號(hào)機(jī)房—最大容量20人

2號(hào)機(jī)房—最大容量50人

3號(hào)機(jī)房—最多容量100人

1.3申請(qǐng)簡(jiǎn)介

申請(qǐng)訂單每周由管理員負(fù)責(zé)清空。

學(xué)生可以預(yù)約未來(lái)一周的機(jī)房使用,預(yù)約的日期為周一至周五,預(yù)約時(shí)需要選擇預(yù)約時(shí)段(上午、下午)

教師審核預(yù)約,依據(jù)實(shí)際情況審核預(yù)約通過(guò)或不通過(guò)。

1.4系統(tǒng)具體需求

首先進(jìn)入登陸界面,可以選擇登錄身份以及身份驗(yàn)證有:

學(xué)生代表:學(xué)號(hào)、姓名、登錄密碼

老師:職工號(hào)、姓名、登錄密碼

管理員:管理員姓名、登錄密碼

退出

2.系統(tǒng)實(shí)現(xiàn)

2.1建立身份類

三種類型的使用者都有相同的共性,通過(guò)建立父類,將三者的共同屬性建立起來(lái)。其中用虛函數(shù)創(chuàng)建子菜單,通過(guò)不同的登錄選擇選項(xiàng)進(jìn)入不同的子菜單。這里為了方便將成員變量設(shè)置為公共屬性,如果設(shè)置為私有屬性需要通過(guò)友元函數(shù)或者成員函數(shù)提供的接口來(lái)訪問(wèn)私有屬性變量。

using namespace std;
class Identity
{
public:
	//不同的操作菜單
	virtual void Mainpulation_Menu() = 0;
	//用戶名
	string M_Name;
	//密碼
	string M_Password;
};

2.2建立管理者類

管理者類在繼承原有的身份類成員變量和虛函數(shù)的基礎(chǔ)上創(chuàng)建了其自身的成員函數(shù),通過(guò)成員函數(shù)來(lái)實(shí)現(xiàn)對(duì)應(yīng)功能選擇。

class Manager :public Identity
{
public:
	virtual void Mainpulation_Menu();
	Manager();
	~Manager();
	Manager(string name, string password);
	void AddAccount();
	//查看賬號(hào)
	void ShowPerson();
	//查看機(jī)房信息
	void ShowComputer();
	//清空預(yù)約記錄
	void ClearFile();
	//初始化容器
	void InitVector();
	//學(xué)生容器
	vector<Student>VStu;
	//老師容器
	vector<Teacher>VTea;
	//檢測(cè)重復(fù) 參數(shù)1代表檢測(cè)的ID號(hào) 參數(shù)2檢測(cè)類型
	bool CheckRepeat(int id, int type);
	//機(jī)房容器
	vector<ComputerRoom>VCom;
};

2.3建立老師類

class Teacher :public Identity
{
public:
	~Teacher();
	Teacher();
	Teacher(int empleid, string name, string password);
	//操作菜單
	virtual void Mainpulation_Menu();
	//查看預(yù)約
	void ShowAllorder();
	//審核預(yù)約
	void ChackOrder();
	//職工號(hào)
	int M_EmpId;
};

2.4建立學(xué)生類

class Student :public Identity
{
public:
	Student();
	Student(int id, string name, string password);
	~Student();
	//菜單界面
	virtual void Mainpulation_Menu();
	//申請(qǐng)預(yù)約
	void ApplyOreder();
	//查看自身預(yù)約
	void ShowMyOreder();
	//查看所有預(yù)約
	void ShowAllOrder();
	//取消預(yù)約
	void CancelOrder();
	//機(jī)房容器
	vector<ComputerRoom>VCom;
	//學(xué)號(hào)
	int M_Id = 0;
};

3.文件處理

3.1管理者的文件

通過(guò)文件記錄管理者的姓名和密碼,將信息存在文本文件上。管理者的的有參構(gòu)造函數(shù)將對(duì)機(jī)房文本文件的信息寫入到創(chuàng)建機(jī)房容器當(dāng)中,機(jī)房容器存儲(chǔ)著對(duì)應(yīng)的機(jī)房號(hào)和最大容量信息。

	//初始化機(jī)房信息
	ifstream ifs;
	ifs.open(COMPUTER_FILE, ios::in);
	ComputerRoom com;
	while (ifs >> com.M_ComId && ifs >> com.M_MaxNum)
	{
		VCom.push_back(com);
	}
	ifs.close();

管理者類建立添加賬戶的成員函數(shù)。利用追加的方式分別寫入要?jiǎng)?chuàng)建的學(xué)生或者老師的信息。

	//利用追加的方式寫文件
	ofs.open(File_names, ios::out | ios::app);
	int id;//學(xué)號(hào)/職工號(hào)
	string name;//姓名
	string pwd;//密碼

3.2老師的文件

通過(guò)讀取老師文件中的信息與老師登錄選項(xiàng)做對(duì)比。

OrderFile of;
	cout << "請(qǐng)輸入審核的預(yù)約記錄,0代表返回" << endl;
	int select = 0;//接受用戶的選擇的預(yù)約記錄
	int ret = 0;//接受預(yù)約結(jié)果的記錄

3.3學(xué)生文件

	OrderFile of;
	if (of.M_Size == 0)
	{
		cout << "沒(méi)有預(yù)約記錄!" << endl;
		system("pause");
		system("cls");
		return;
	}
	cout << "審核中或預(yù)約的記錄可以取消,請(qǐng)輸入取消的記錄!" << endl;
	int index = 1;
	vector<int>v;

4.程序下載地址

鏈接: https://pan.baidu.com/s/1E_6YrUu2YOWZt-hybhP9mQ?pwd=unv8

提取碼: unv8 

到此這篇關(guān)于C++機(jī)房預(yù)約系統(tǒng)實(shí)現(xiàn)流程實(shí)例的文章就介紹到這了,更多相關(guān)C++機(jī)房預(yù)約系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解C++中的四種類型轉(zhuǎn)換運(yùn)算符

    詳解C++中的四種類型轉(zhuǎn)換運(yùn)算符

    隱式類型轉(zhuǎn)換是安全的,顯式類型轉(zhuǎn)換是有風(fēng)險(xiǎn)的,C語(yǔ)言之所以增加強(qiáng)制類型轉(zhuǎn)換的語(yǔ)法,就是為了強(qiáng)調(diào)風(fēng)險(xiǎn),讓程序員意識(shí)到自己在做什么,本文將給大家詳細(xì)介紹一下C++中的四種類型轉(zhuǎn)換運(yùn)算符,需要的朋友可以參考下
    2023-09-09
  • 使用C++程序獲取新浪行情數(shù)據(jù)的方法

    使用C++程序獲取新浪行情數(shù)據(jù)的方法

    這篇文章介紹了在一定的周期范圍內(nèi)去抓取新浪中行情數(shù)據(jù),通過(guò)更新數(shù)據(jù)來(lái)緩解構(gòu)造模擬數(shù)據(jù)與真實(shí)數(shù)據(jù)差異性,感興趣的朋友可以了解一下
    2015-07-07
  • C語(yǔ)言植物大戰(zhàn)數(shù)據(jù)結(jié)構(gòu)希爾排序算法

    C語(yǔ)言植物大戰(zhàn)數(shù)據(jù)結(jié)構(gòu)希爾排序算法

    這篇文章主要為大家介紹了C語(yǔ)言希爾排序算法實(shí)現(xiàn)植物大戰(zhàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • C++實(shí)現(xiàn)迷宮小游戲

    C++實(shí)現(xiàn)迷宮小游戲

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)迷宮小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • c++字符串char[]數(shù)組分割split問(wèn)題

    c++字符串char[]數(shù)組分割split問(wèn)題

    這篇文章主要介紹了c++字符串char[]數(shù)組分割split問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • sigsetjmp的用法總結(jié)

    sigsetjmp的用法總結(jié)

    sigsetjmp()會(huì)保存目前堆棧環(huán)境,然后將目前的地址作一個(gè)記號(hào),而在程序其他地方調(diào)用siglongjmp()時(shí)便會(huì)直接跳到這個(gè)記號(hào)位置,然后還原堆棧,繼續(xù)程序的執(zhí)行
    2013-09-09
  • 詳解C++編程中的輸入輸相關(guān)的類和對(duì)象

    詳解C++編程中的輸入輸相關(guān)的類和對(duì)象

    這篇文章主要介紹了詳解C++編程中的輸入輸相關(guān)的類和對(duì)象,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-09-09
  • c++中string類成員函數(shù)c_str()的用法

    c++中string類成員函數(shù)c_str()的用法

    c_str()函數(shù)返回一個(gè)指向正規(guī)c字符串的指針,內(nèi)容和string類的本身對(duì)象是一樣的,通過(guò)string類的c_str()函數(shù)能夠把string對(duì)象轉(zhuǎn)換成c中的字符串的樣式
    2013-09-09
  • C++中實(shí)現(xiàn)把表的數(shù)據(jù)導(dǎo)出到EXCEL并打印實(shí)例代碼

    C++中實(shí)現(xiàn)把表的數(shù)據(jù)導(dǎo)出到EXCEL并打印實(shí)例代碼

    這篇文章主要介紹了實(shí)現(xiàn)把表的數(shù)據(jù)導(dǎo)出到EXCEL并打印實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • C++ 類的繼承與派生實(shí)例詳解

    C++ 類的繼承與派生實(shí)例詳解

    這篇文章主要介紹了 C++ 類的繼承與派生實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論

石楼县| 沂源县| 沧州市| 九寨沟县| 铜鼓县| 庆城县| 额尔古纳市| 乌苏市| 阜平县| 清苑县| 丹凤县| 淳安县| 绍兴市| 嘉荫县| 山阴县| 平利县| 仁怀市| 玉林市| 万山特区| 西吉县| 麻阳| 无极县| 六盘水市| 芦溪县| 扬中市| 浑源县| 儋州市| 烟台市| 吴堡县| 巨野县| 和龙市| 阿克陶县| 红安县| 乌鲁木齐县| 浦东新区| 克拉玛依市| 洪江市| 宣威市| 泰兴市| 竹溪县| 麻江县|