欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++中queue容器的具體使用

 更新時間:2023年03月31日 09:57:05   作者:Darren_pty  
本文主要介紹了C++中queue容器的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、queue容器

1.1 簡介

① queue是一種先進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),它有兩個出口。

② 隊列容器允許一段新增元素,從另一端移除元素。

③ 隊列中只有對頭和隊尾才可以被外界使用,因此隊列不允許有遍歷行為。

④ 隊列中進(jìn)數(shù)據(jù)稱為入隊。

⑤ 隊列中出數(shù)據(jù)稱為出隊。

1.2 常用接口

① 功能描述:棧容器常用的對外接口。

② 構(gòu)造函數(shù):

queue que; //queue采用模板類實現(xiàn),queue對象的默認(rèn)構(gòu)造形式
queue(const queue &que); //拷貝構(gòu)造函數(shù)

③ 賦值操作:

queue& operator=(const queue &que); //重載等號操作符

④ 數(shù)據(jù)存儲:

push(elem); //往隊尾添加元素
pop(); //從對頭移除第一個元素
back(); //返回最后一個元素
front(); //返回第一個元素

⑤ 大小操作:

empty(); //判斷堆棧是否為空
size(); //返回棧的大小
#include<iostream>
using namespace std;
#include <queue>
#include<string>
 
//隊列 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)建隊列
    queue<Person>q;
 
    //準(zhǔn)備數(shù)據(jù)
    Person p1("唐僧", 30);
    Person p2("孫悟空", 1000);
    Person p3("豬八戒", 900);
    Person p4("沙僧", 800);
 
    //入隊
    q.push(p1);
    q.push(p2);
    q.push(p3);
    q.push(p4);
 
    cout << "隊列大小為:" << q.size() << endl;
 
    //判斷只要隊列不為空,查看對頭,查看隊尾,出對
    while (!q.empty())
    {
        //查看對頭
        cout << "對頭元素 -- 姓名:" << q.front().m_Name << " 年齡:" << q.front().m_Age << endl;
        
        //查看隊尾
        cout << "隊尾元素 -- 姓名:" << q.back().m_Name << " 年齡:" << q.back().m_Age << endl;
 
        //出對
        q.pop();  //出隊是出對頭元素
 
    }
    cout << "隊列大小為:" << q.size() << endl;
}
 
int main() 
{
    test01();
 
    system("pause");
 
    return 0;
 
}

運行結(jié)果:

隊列大小為:4
對頭元素 -- 姓名:唐僧 年齡:30
隊尾元素 -- 姓名:沙僧 年齡:800
對頭元素 -- 姓名:孫悟空 年齡:1000
隊尾元素 -- 姓名:沙僧 年齡:800
對頭元素 -- 姓名:豬八戒 年齡:900
隊尾元素 -- 姓名:沙僧 年齡:800
對頭元素 -- 姓名:沙僧 年齡:800
隊尾元素 -- 姓名:沙僧 年齡:800
隊列大小為:0
請按任意鍵繼續(xù). . .

到此這篇關(guān)于C++中queue容器的具體使用的文章就介紹到這了,更多相關(guān)C++ queue容器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • c語言switch反匯編的實現(xiàn)

    c語言switch反匯編的實現(xiàn)

    本文主要介紹了c語言switch反匯編,在分支較多的時候,switch的效率比if高,在反匯編中我們即可看到效率高的原因,感興趣的可以了解一下
    2021-06-06
  • Qt?事件處理機制的深入理解

    Qt?事件處理機制的深入理解

    本文主要介紹了Qt?事件處理機制的深入理解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • C語言實現(xiàn)掃雷算法簡易版

    C語言實現(xiàn)掃雷算法簡易版

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)掃雷算法簡易版,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C語言深入探究選擇排序與基數(shù)排序使用案例講解

    C語言深入探究選擇排序與基數(shù)排序使用案例講解

    算法中排序是十分重要的,而每一個學(xué)習(xí)計算機的都會在初期的時候接觸到這種排序,下面這篇文章主要給大家介紹了關(guān)于c語言選擇排序與基數(shù)排序使用的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • 詳解C語言學(xué)習(xí)記錄之指針

    詳解C語言學(xué)習(xí)記錄之指針

    關(guān)于指針,其是C語言的重點,C語言學(xué)的好壞,其實就是指針學(xué)的好壞。其實指針并不復(fù)雜,學(xué)習(xí)指針,要正確的理解指針,本片文章能給就來學(xué)習(xí)一下
    2021-11-11
  • c++如何分割字符串示例代碼

    c++如何分割字符串示例代碼

    因為c++字符串沒有split函數(shù),所以字符串分割單詞的時候必須自己手寫,也相當(dāng)于自己實現(xiàn)一個split函數(shù)吧!下面跟小編一起來看看如何實現(xiàn)這個功能。
    2016-08-08
  • iostream與iostream.h的區(qū)別詳細(xì)解析

    iostream與iostream.h的區(qū)別詳細(xì)解析

    以下是對C++中iostream與iostream.h的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-09-09
  • C語言實現(xiàn)Linux下的socket文件傳輸實例

    C語言實現(xiàn)Linux下的socket文件傳輸實例

    這篇文章主要介紹了C語言實現(xiàn)Linux下的socket文件傳輸?shù)姆椒?較為詳細(xì)的分析了C語言文件Socket文件傳輸客戶端與服務(wù)器端相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • Qt數(shù)據(jù)庫相關(guān)應(yīng)用開發(fā)總結(jié)

    Qt數(shù)據(jù)庫相關(guān)應(yīng)用開發(fā)總結(jié)

    這篇文章主要為大家介紹了在Qt數(shù)據(jù)庫應(yīng)用開發(fā)中的一些經(jīng)驗總結(jié),以及一些組件的使用介紹。文中的示例代碼講解詳細(xì),需要的可以參考一下
    2022-02-02
  • C++中函數(shù)的默認(rèn)參數(shù)詳細(xì)解析

    C++中函數(shù)的默認(rèn)參數(shù)詳細(xì)解析

    在函數(shù)聲明或定義時,直接對參數(shù)賦值,該參數(shù)就是默認(rèn)參數(shù)。在函數(shù)調(diào)用時,省略部分或全部參數(shù),這時就會使用默認(rèn)參數(shù)進(jìn)行代替
    2013-10-10

最新評論