您好,登錄后才能下訂單哦!
這篇“C++中queue容器如何使用”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“C++中queue容器如何使用”文章吧。
① queue是一種先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),它有兩個(gè)出口。
② 隊(duì)列容器允許一段新增元素,從另一端移除元素。
③ 隊(duì)列中只有對(duì)頭和隊(duì)尾才可以被外界使用,因此隊(duì)列不允許有遍歷行為。
④ 隊(duì)列中進(jìn)數(shù)據(jù)稱為入隊(duì)。
⑤ 隊(duì)列中出數(shù)據(jù)稱為出隊(duì)。
① 功能描述:棧容器常用的對(duì)外接口。
② 構(gòu)造函數(shù):
queue que; //queue采用模板類實(shí)現(xiàn),queue對(duì)象的默認(rèn)構(gòu)造形式 queue(const queue &que); //拷貝構(gòu)造函數(shù)
③ 賦值操作:
queue& operator=(const queue &que); //重載等號(hào)操作符
④ 數(shù)據(jù)存儲(chǔ):
push(elem); //往隊(duì)尾添加元素 pop(); //從對(duì)頭移除第一個(gè)元素 back(); //返回最后一個(gè)元素 front(); //返回第一個(gè)元素
⑤ 大小操作:
empty(); //判斷堆棧是否為空 size(); //返回棧的大小 #include<iostream> using namespace std; #include <queue> #include<string> //隊(duì)列 Queue class Person { public: Person(string name, int age) { this->m_Name = name; this->m_Age = age; } string m_Name; int m_Age; }; void test01() { //創(chuàng)建隊(duì)列 queue<Person>q; //準(zhǔn)備數(shù)據(jù) Person p1("唐僧", 30); Person p2("孫悟空", 1000); Person p3("豬八戒", 900); Person p4("沙僧", 800); //入隊(duì) q.push(p1); q.push(p2); q.push(p3); q.push(p4); cout << "隊(duì)列大小為:" << q.size() << endl; //判斷只要隊(duì)列不為空,查看對(duì)頭,查看隊(duì)尾,出對(duì) while (!q.empty()) { //查看對(duì)頭 cout << "對(duì)頭元素 -- 姓名:" << q.front().m_Name << " 年齡:" << q.front().m_Age << endl; //查看隊(duì)尾 cout << "隊(duì)尾元素 -- 姓名:" << q.back().m_Name << " 年齡:" << q.back().m_Age << endl; //出對(duì) q.pop(); //出隊(duì)是出對(duì)頭元素 } cout << "隊(duì)列大小為:" << q.size() << endl; } int main() { test01(); system("pause"); return 0; }
運(yùn)行結(jié)果:
隊(duì)列大小為:4
對(duì)頭元素 -- 姓名:唐僧 年齡:30
隊(duì)尾元素 -- 姓名:沙僧 年齡:800
對(duì)頭元素 -- 姓名:孫悟空 年齡:1000
隊(duì)尾元素 -- 姓名:沙僧 年齡:800
對(duì)頭元素 -- 姓名:豬八戒 年齡:900
隊(duì)尾元素 -- 姓名:沙僧 年齡:800
對(duì)頭元素 -- 姓名:沙僧 年齡:800
隊(duì)尾元素 -- 姓名:沙僧 年齡:800
隊(duì)列大小為:0
請(qǐng)按任意鍵繼續(xù). . .
以上就是關(guān)于“C++中queue容器如何使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。