C++實(shí)現(xiàn)圖書(shū)館系統(tǒng)
本文實(shí)例為大家分享了C++實(shí)現(xiàn)圖書(shū)館系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
1.目的
用c++語(yǔ)言實(shí)現(xiàn)圖書(shū)館系統(tǒng)
2.分析
圖書(shū)館系統(tǒng)中要實(shí)現(xiàn)的功能有:圖書(shū)的分類(lèi)存儲(chǔ),不同身份的人員進(jìn)行不同的操作。在這個(gè)程序中,
我把圖書(shū)分為兩類(lèi):小說(shuō)類(lèi)和專(zhuān)業(yè)書(shū)類(lèi),這兩種類(lèi)都有相同的功能,所以設(shè)一個(gè)基類(lèi),這兩種類(lèi)分別
繼承基類(lèi)。人員有兩類(lèi):管理員和學(xué)生,這兩類(lèi)有部分相同的私有數(shù)據(jù)成員,所以設(shè)一個(gè)人員的基類(lèi),
這兩種類(lèi)分別繼承基類(lèi)。在圖書(shū)類(lèi)中,小說(shuō)類(lèi)和專(zhuān)業(yè)書(shū)類(lèi)都要設(shè)自己的結(jié)構(gòu)體數(shù)組,用來(lái)存儲(chǔ)書(shū)的信
息,同時(shí)都要有增加書(shū)、刪除書(shū)、搜索書(shū)的功能。管理員類(lèi)的函數(shù)要有增加各類(lèi)書(shū)、瀏覽全部書(shū)的功
能。學(xué)生類(lèi)要有搜索書(shū)、借書(shū)、還書(shū)等功能。
3.代碼
// 圖書(shū)館系統(tǒng) #include<iostream> #include<string> using namespace std; typedef struct book ?//結(jié)構(gòu)體定義書(shū)的基本信息 { ? ? string book_name; //書(shū)名 ? ? string author; ? ?//作者 ?? ?string kind; ?//書(shū)的種類(lèi) }Book; class base ?//抽象類(lèi) { public: ? ? base(); ? ? virtual void deposit() = 0; ?//純虛函數(shù)增加書(shū) ? ? virtual void display(string name) = 0; //純虛函數(shù)顯示一本書(shū)的信息 ?? ?virtual void display() = 0; ?//純虛函數(shù)顯示書(shū)的信息 ?? ?virtual int isauthor(string a) = 0; //判斷是否存在這個(gè)作者的書(shū) ?? ?virtual bool isbookname(string b) = 0; //用書(shū)名判斷是否存在這本書(shū) ?? ?virtual void clearbook(string name) = 0; }; base::base() {} class novel:public base ? //小說(shuō)類(lèi) { public: ?? ?novel(); ?//構(gòu)造函數(shù) ?? ?virtual void deposit(); //增加圖書(shū) ?? ?virtual void display(); //顯示圖書(shū)信息 ? ? virtual void display(string name); //顯示一本書(shū)的信息 ? ? virtual int isauthor(string a); //判斷是否存在這個(gè)作者的書(shū) ?? ?virtual bool isbookname(string b); //用書(shū)名判斷是否存在這本書(shū) ? ? virtual void clearbook(string name); //刪除一本書(shū) private: ?? ?int novelnumber; ?//目前書(shū)的數(shù)目 ? ? Book mynovel[50]; ?//結(jié)構(gòu)體數(shù)組,存放小說(shuō)類(lèi)書(shū)的信息 ?? ?Book *p; //結(jié)構(gòu)體類(lèi)型的指針 }; novel::novel() { ?? ?novelnumber = 0; ?? ?p = mynovel; ?? ?mynovel[0].author = "1"; ?? ?mynovel[0].book_name = "1"; ?? ?mynovel[0].kind = "小說(shuō)"; ?? ?novelnumber++; ?? ?mynovel[1].author = "2"; ?? ?mynovel[1].book_name = "2"; ?? ?mynovel[1].kind = "小說(shuō)"; ?? ?novelnumber++; ?? ?for(int i = 2;i < 50;i++) ? ? { ? ? ? ? mynovel[i].author = "0"; ? ? ? ? mynovel[i].book_name = "0"; ? ? } ? //初始化數(shù)組 } void novel::clearbook(string name) //刪除一本書(shū) { ? ? Book* t; ?//結(jié)構(gòu)類(lèi)型指針 ? ? t = mynovel; ?//指向小說(shuō)類(lèi)的數(shù)組 ? ? while(t->book_name != name) //當(dāng)書(shū)名不符時(shí),指向下一空間 ? ? { ? ? ? ? t++; ? ? } ? ? if(t->book_name == name) ?//當(dāng)找到這本書(shū)時(shí),清空 ? ? { ? ? ? ? t->author = "0"; ? ? ? ? t->book_name = "0"; ? ? ? ? novelnumber--; ?//總數(shù)目減一 ? ? } } void novel::deposit() ?//存入小說(shuō)類(lèi)的圖書(shū) { ? ? Book* t; ? ? string temp_author; ? ? string temp_book_name; ? ? cout << "請(qǐng)輸入圖書(shū)名稱(chēng):"; ? ? cin >> temp_book_name; ? ? cout << endl << "請(qǐng)輸入作者:"; ? ? cin >> temp_author; //記錄書(shū)的信息 ? ? t = mynovel; ? ? while(t->author != "0") ? ? { ? ? ? ? t++; ? ? } //找空的存儲(chǔ)空間 ? ? if(t->author == "0") ? ? { ? ? ? ? t->author = temp_author; ? ? ? ? t->book_name = temp_book_name; ? ? ? ? t->kind = "小說(shuō)"; ? ? ? ? novelnumber++; ? ? } //如果存儲(chǔ)空間為空,則存放該書(shū)信息 } void novel::display() ?//顯示該類(lèi)書(shū)信息 { ? ? Book* t; ? ? int number = novelnumber; ? ? cout << "小說(shuō)類(lèi)的圖書(shū)有" << novelnumber << "本:" << endl; ? ? t = mynovel; ? ? while(number!=0) ? ? { ? ? ? ? if(t->author != "0") ? ? ? ? { ? ? ? ? ? ? cout << "圖書(shū)名稱(chēng)為:" << t->book_name << endl;; ? ? ? ? ? ? cout << "作者:" << t->author << endl; ? ? ? ? ? ? cout << "書(shū)的種類(lèi)為:" << t->kind << endl; ? ? ? ? ? ? number--; ? ? ? ? } //當(dāng)存儲(chǔ)空間有內(nèi)容時(shí),輸出書(shū)的信息 ? ? ? ? t++; ? ? } ?//顯示所有書(shū)的信息 } void novel::display(string name) //顯示這本書(shū)的信息 { ? ? Book* t; ? ? t = mynovel; ? ? while((t->book_name != name) && (t->author != name)) ? ? { ? ? ? ? t++; ? ? } ?//書(shū)名或者作者不符時(shí)指向下一空間 ? ? if((t->book_name == name) || (t->author != name)) ? ? { ? ? ? ? cout << "圖書(shū)名稱(chēng)為:" << t->book_name << endl;; ? ? ? ? cout << "作者:" << t->author << endl; ? ? ? ? cout << "書(shū)的種類(lèi)為:" << t->kind << endl; ? ? } //若符合則輸出這本書(shū)的信息 } int novel::isauthor(string a) ?//用作者判斷是否有這本書(shū) { ? ? Book* t; ? ? t = mynovel; ? ? while(t->author != "0") ? ? { ? ? ? ? if(t->author == a) ? ? ? ? { ? ? ? ? ? ? return 1; ? ? ? ? } ?//若有則返回1 ? ? ? ? t++; ? ? } ? ? return 0; ?//沒(méi)有則返回0 } bool novel::isbookname(string b)//用書(shū)名判斷是否有這本書(shū) { ? ? Book* t; ? ? t = mynovel; ? ? while(t->book_name != "0") ? ? { ? ? ? ? if(t->book_name == b) ? ? ? ? { ? ? ? ? ? ? return true; ? ? ? ? ? ? break; ? ? ? ? } ?//若有則返回true ? ? ? ? t++; ? ? } ? ? return false;//沒(méi)有則返回false } class professional:public base ?//專(zhuān)業(yè)書(shū)類(lèi) { public: ?? ?professional(); ?? ?virtual void deposit(); //存入 ?? ?virtual void display(); ?//顯示圖書(shū)信息 ?? ?virtual void display(string name); //顯示這本書(shū)的信息 ?? ?virtual int isauthor(string a); //判斷是否存在這個(gè)作者的書(shū) ?? ?virtual bool isbookname(string b); //用書(shū)名判斷是否存在這本書(shū) ?? ?virtual void clearbook(string name); //刪除一本書(shū) private: ?? ?int pronumber; ?//書(shū)的數(shù)目 ?? ?Book myprofessional[50]; //結(jié)構(gòu)體數(shù)組,存放專(zhuān)業(yè)類(lèi)書(shū)的信息 ?? ?Book *p; //結(jié)構(gòu)體類(lèi)型的指針 }; professional::professional() //構(gòu)造函數(shù) { ?? ?pronumber = 0; ?? ?p = myprofessional; ?? ?myprofessional[0].author = "p1"; ?? ?myprofessional[0].book_name = "p1"; ?? ?myprofessional[0].kind = "專(zhuān)業(yè)書(shū)"; ?? ?pronumber++; ?? ?myprofessional[1].author = "p2"; ?? ?myprofessional[1].book_name = "p2"; ?? ?myprofessional[1].kind = "專(zhuān)業(yè)書(shū)"; ?? ?pronumber++; ?? ?for(int i = 2;i < 50;i++) ? ? { ? ? ? ? myprofessional[i].author = "0"; ? ? ? ? myprofessional[i].book_name = "0"; ? ? } //初始化數(shù)組 } void professional::clearbook(string name)//刪除一本書(shū) { ? ? Book* t;//結(jié)構(gòu)類(lèi)型指針 ? ? t = myprofessional; //指向?qū)I(yè)類(lèi)的數(shù)組 ? ? while(t->book_name != name)//當(dāng)書(shū)名不符時(shí),指向下一空間 ? ? { ? ? ? ? t++; ? ? } ? ? if(t->book_name == name)//當(dāng)找到這本書(shū)時(shí),清空 ? ? { ? ? ? ? t->author = "0"; ? ? ? ? t->book_name = "0"; ? ? ? ? pronumber--;//總數(shù)目減一 ? ? } } void professional::deposit() ?//存入專(zhuān)業(yè)類(lèi)的圖書(shū) { ? ? Book* t; ? ? string temp_author; ? ? string temp_book_name; ? ? cout << "請(qǐng)輸入圖書(shū)名稱(chēng):"; ? ? cin >> temp_book_name; ? ? cout << endl << "請(qǐng)輸入作者:"; ? ? cin >> temp_author; ? ? t = myprofessional; ? ? while(t->author != "0") ? ? { ? ? ? ? t++; ? ? } ? ? if(t->author == "0") ? ? { ? ? ? ? t->author = temp_author; ? ? ? ? t->book_name = temp_book_name; ? ? ? ? t->kind = "專(zhuān)業(yè)書(shū)"; ? ? ? ? pronumber++; ? ? } } void professional::display() ?//顯示該類(lèi)書(shū)信息 { ? ? Book* t; ? ? int number = pronumber; ? ? cout << "專(zhuān)業(yè)類(lèi)的圖書(shū)有" << pronumber << "本:" << endl; ? ? t = myprofessional; ? ? while(number!=0) ? ? { ? ? ? ? if(t->author != "0") ? ? ? ? { ? ? ? ? ? ? cout << "圖書(shū)名稱(chēng)為:" << t->book_name << endl;; ? ? ? ? ? ? cout << "作者:" << t->author << endl; ? ? ? ? ? ? cout << "書(shū)的種類(lèi)為:" << t->kind << endl; ? ? ? ? ? ? number--; ? ? ? ? } //當(dāng)存儲(chǔ)空間有內(nèi)容時(shí),輸出書(shū)的信息 ? ? ? ? t++; ? ? } ?//顯示所有書(shū)的信息 } void professional::display(string name) //顯示這本書(shū)的信息 { ? ? Book* t; ? ? t = myprofessional; ? ? while((t->book_name != name) && (t->author != name)) ? ? { ? ? ? ? t++; ? ? }//書(shū)名或者作者不符時(shí)指向下一空間 ? ? if((t->book_name == name) || (t->author == name)) ? ? { ? ? ? ? cout << "圖書(shū)名稱(chēng)為:" << t->book_name << endl;; ? ? ? ? cout << "作者:" << t->author << endl; ? ? ? ? cout << "書(shū)的種類(lèi)為:" << t->kind << endl; ? ? }//若符合則輸出這本書(shū)的信息 } int professional::isauthor(string a)//用作者判斷是否有這本書(shū) { ? ? Book* t; ? ? t = myprofessional; ? ? while(t->author != "0") ? ? { ? ? ? ? if(t->author == a) ? ? ? ? { ? ? ? ? ? ? return 1; ? ? ? ? }//若有則返回1 ? ? ? ? t++; ? ? } ? ? return 0;//沒(méi)有則返回0 } bool professional::isbookname(string b)//用書(shū)名判斷是否有這本書(shū) { ? ? Book* t; ? ? t = myprofessional; ? ? while(t->book_name != "0") ? ? { ? ? ? ? if(t->book_name == b) ? ? ? ? { ? ? ? ? ? ? return true; //若有則返回true ? ? ? ? } ? ? ? ? t++; ? ? } ? ? return false;//沒(méi)有則返回false } class people ?//人員類(lèi) { public: ? ? people(); protected: ? ? base* q; ?//基類(lèi)指針 ?? ?novel novel1; //小說(shuō)類(lèi)對(duì)象 ?? ?professional professional1; ?//專(zhuān)業(yè)書(shū)類(lèi)對(duì)象 }; people::people() {} class library:public people ? ?//管理員類(lèi) { public: ?? ?library(); ?? ?void add(); //增加圖書(shū) ?? ?void all(); ? ? //瀏覽全部圖書(shū) ?? ?void display(); ? //顯示功能 ?? ?void exit(); //退出 }; library::library() {} void library::add()//增加圖書(shū) { ?? ?int temp; ?? ?cout << "1.小說(shuō) ?2.專(zhuān)業(yè)書(shū) ?請(qǐng)輸入圖書(shū)種類(lèi):" ; ?? ?cin >> temp; ?? ?if(1 == temp) ?? ?{ ?? ? ? ?q = &novel1; ?? ??? ?q->deposit(); ?//增加一本小說(shuō)類(lèi)的圖書(shū) ?? ?} ?? ?else if(2 == temp) ?? ?{ ?? ??? ?q = &professional1; ?? ??? ?q->deposit();//增加一本專(zhuān)業(yè)類(lèi)的圖書(shū) ?? ?} ?? ?else ? ? { ? ? ? ? cout << "無(wú)此操作!" << endl; ? ? } ?? ?display(); } void library::all()//顯示全部圖書(shū)信息 { ? ? q=&novel1; ? ? q->display(); ? ? q=&professional1; ? ? q->display(); ? ? display(); } void library::display() //顯示功能 { ? ? int temp; ? ? cout << "1.增加圖書(shū) ?2.瀏覽全部圖書(shū) ?3.退出 請(qǐng)選擇功能:"; ? ? cin >> temp; ? ? ? ? switch(temp) ? ? ? ? { ? ? ? ? ? ? case 1: add(); ? ? ? ? ? ? break; ? ? ? ? ? ? case 2: all(); ? ? ? ? ? ? break; ? ? ? ? ? ? case 3: exit(); ? ? ? ? ? ? break; ? ? ? ? ? ? default : ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "無(wú)此操作!" << endl; ? ? ? ? ? ? ? ? display(); ? ? ? ? ? ? } ? ? ? ? ? ? break; ? ? ? ? } } void library::exit() ?//退出 { ? ? cout << "感謝您的使用!" <<endl; } class student:public people { public: ?? ?student(); ?? ?void search_book(); ?//搜索 ?? ?void borrow_book(); ?//借書(shū) ?? ?void return_book(); ?//還書(shū) ?? ?void information(); ?//顯示該賬戶(hù)信息 ?? ?void display(); ? ? ?//顯示功能 ?? ?void exit(); ? ? ? ? //退出 private: ?? ?int borrow_number; ?//已借閱數(shù)目 ?? ?int return_number; ?//已還圖書(shū)數(shù)目 }; student::student() ? ? //歡迎界面 { ? ? borrow_number = 0; ? ? return_number = 0; } void student::search_book()//搜索 { ? ? int temp; ? ? string temp_author; ? ? string temp_bookname; ? ? string temp_kind; ? ? cout << "1.按作者搜索 ?2.按書(shū)名搜索 ?3.按種類(lèi)搜索 請(qǐng)輸入:"; ? ? cin >> temp; ? ? int f; ? ? switch(temp) ? ? { ? ? ? ? case 1: ? //按作者搜索 ? ? ? ? ? ? cout << "請(qǐng)輸入作者名:"; ? ? ? ? ? ? cin >> temp_author; ? ? ? ? ? ? q = &novel1; ?//從小說(shuō)類(lèi)中搜索 ? ? ? ? ? ? f = q->isauthor(temp_author); ? ? ? ? ? ? if(1 == f) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q->display(temp_author); ?//若存在則顯示這本書(shū)的信息 ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "小說(shuō)類(lèi)中沒(méi)有這本書(shū)" <<endl; ? ? ? ? ? ? } ? ? ? ? ? ? q = &professional1;//從專(zhuān)業(yè)類(lèi)類(lèi)中搜索 ? ? ? ? ? ? f = q->isauthor(temp_author); ? ? ? ? ? ? if(1 == f) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q->display(temp_author);//若存在則顯示這本書(shū)的信息 ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "專(zhuān)業(yè)類(lèi)中沒(méi)有這本書(shū)" <<endl; ? ? ? ? ? ? } ? ? ? ? ? ? break; ? ? ? ? case 2: ? ? ? ? ? ? cout << "請(qǐng)輸入書(shū)名:"; ? ? ? ? ? ? cin >> temp_bookname; ? ? ? ? ? ? q = &novel1;//從小說(shuō)類(lèi)中搜索 ? ? ? ? ? ? if(q->isbookname(temp_bookname)) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q->display(temp_bookname);//若存在則顯示這本書(shū)的信息 ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "小說(shuō)類(lèi)中沒(méi)有這本書(shū)" <<endl; ? ? ? ? ? ? } ? ? ? ? ? ? q = &professional1;//從專(zhuān)業(yè)類(lèi)類(lèi)中搜索 ? ? ? ? ? ? if(q->isbookname(temp_bookname)) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q->display(temp_bookname);//若存在則顯示這本書(shū)的信息 ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "專(zhuān)業(yè)類(lèi)中沒(méi)有這本書(shū)" <<endl; ? ? ? ? ? ? } ? ? ? ? ? ? break; ? ? ? ? ?case 3: ? ? ? ? ? ? cout << "請(qǐng)輸入種類(lèi):"; ? ? ? ? ? ? cin >> temp_kind; ? ? ? ? ? ? if("novel" == temp_kind) ?//顯示小說(shuō)類(lèi)的全部書(shū) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q = &novel1; ? ? ? ? ? ? ? ? q->display(); ? ? ? ? ? ? } ? ? ? ? ? ? else if("professional" == temp_kind)//顯示專(zhuān)業(yè)類(lèi)的全部書(shū) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? q = &professional1; ? ? ? ? ? ? ? ? q->display(); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "沒(méi)有該種類(lèi)的書(shū)" <<endl; ? ? ? ? ? ? } ? ? ? ? ? ? break; ? ? } ? ? display(); } void student::borrow_book() //借書(shū) { ? ? string temp; ? ? int i; ? ? cout << "1.小說(shuō)類(lèi) 2.專(zhuān)業(yè)書(shū)類(lèi) ?請(qǐng)選擇書(shū)的種類(lèi):"; ? ? cin >> i; ? ? cout << "請(qǐng)輸入書(shū)名:" ; ? ? cin >> temp; ? ? if(1 == i) ? ? { ? ? ? ? q = &novel1; ? ? } ? ? if(2 == i) ? ? { ? ? ? ? q = &professional1; ? ? } ? ? if(q->isbookname(temp)) ?//如果有這本書(shū)則執(zhí)行下面步驟 ? ? { ? ? ? ? q->clearbook(temp); ?//清除這本書(shū) ? ? ? ? borrow_number++; ? //借閱書(shū)的數(shù)目加一 ? ? } ? ? else ? ? { ? ? ? ? cout << "沒(méi)有這本書(shū)!" << endl; ? ? } ? ? display(); } void student::return_book() //還書(shū) { ? ? int i; ? ? cout << "1.小說(shuō)類(lèi) 2.專(zhuān)業(yè)書(shū)類(lèi) ?請(qǐng)選擇書(shū)的種類(lèi):"; ? ? cin >> i; ? ? if(1 == i) ? ? { ? ? ? ? q = &novel1; ? ? } ? ? else ? ? { ? ? ? ? q = &professional1; ? ? } ? ? q->deposit(); ?//錄入這本書(shū)的信息 ? ? return_number++; ?//已還書(shū)數(shù)加一 ? ? display(); } void student::information() //顯示學(xué)生借閱信息 { ? ? cout << "您已借閱" << borrow_number << "本書(shū)" <<endl; ? ? cout << "您已還" << return_number << "本書(shū)" <<endl; ? ? display(); } void student::exit() //退出 { ? ? cout << "感謝您的使用!"; } void student::display() //顯示功能 { ? ? int i; ? ? cout << "1.搜索圖書(shū) 2.借書(shū) 3.還書(shū) 4.查詢(xún)賬戶(hù)信息 5.退出 請(qǐng)選擇功能:"; ? ? cin >> i; ? ? switch(i) ? ? { ? ? ? ? case 1:search_book(); ? ? ? ? break; ? ? ? ? case 2:borrow_book(); ? ? ? ? break; ? ? ? ? case 3:return_book(); ? ? ? ? break; ? ? ? ? case 4:information(); ? ? ? ? break; ? ? ? ? case 5:exit(); ? ? ? ? break; ? ? ? ? default : ? ? ? ? ? ? { ? ? ? ? ? ? ? ? cout << "無(wú)此操作!" << endl; ? ? ? ? ? ? ? ? display(); ? ? ? ? ? ? } ? ? ? ? ? ? break; ? ? } } int main() { ? ? int i; ? ? student b1; ? ? library a1; ? ? cout << "1.學(xué)生 ?2.管理員 您的身份是:"; ? ? while(cin >> i) ? ? { ? ? ? ? if(1 == i) ? ? ? ? { ? ? ? ? ? ? b1.display(); ? ? ? ? } ? ? ? ? if(2 == i) ? ? ? ? { ? ? ? ? ? ? a1.display(); ? ? ? ? } ? ? ? ? cout <<endl << "1.學(xué)生 2.管理員 您的身份是:"; ? ? } ? ? return 0; }
4.總結(jié)
這個(gè)程序已經(jīng)可以實(shí)現(xiàn)基本的功能,但是當(dāng)重新選擇身份進(jìn)入系統(tǒng)時(shí),上次的訪問(wèn)記錄就會(huì)被清除。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C++中結(jié)構(gòu)體和Json字符串互轉(zhuǎn)的問(wèn)題詳解
這篇文章主要給大家介紹了關(guān)于C++中結(jié)構(gòu)體和Json字符串互轉(zhuǎn)問(wèn)題的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03Qt中TableView與TreeView組件聯(lián)動(dòng)實(shí)現(xiàn)
本文主要介紹了Qt中TableView與TreeView組件聯(lián)動(dòng)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12如何使用visual studio2019創(chuàng)建簡(jiǎn)單的MFC窗口(使用C++)
這篇文章主要介紹了如何使用visual studio2019創(chuàng)建簡(jiǎn)單的MFC窗口(使用C++),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03C語(yǔ)言實(shí)現(xiàn)BMP圖像閉運(yùn)算處理
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)BMP圖像閉運(yùn)算處理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10C/C++ 動(dòng)態(tài)數(shù)組的創(chuàng)建的實(shí)例詳解
這篇文章主要介紹了C/C++ 動(dòng)態(tài)數(shù)組的創(chuàng)建的實(shí)例詳解的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家掌握這樣的功能,需要的朋友可以參考下2017-10-10