亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++中pair使用的示例代碼

 更新時間:2025年02月26日 15:03:39   作者:黎明之時  
本文主要介紹了C++中pair使用的示例代碼,用于存儲兩個不同類型的元素,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、pair的介紹

  pair是一個很實(shí)用的"小玩意",當(dāng)想要將兩個元素綁在一起作為一個合成元素,又不想因此定義結(jié)構(gòu)體時,使用pair可以很方便地作為一個替代品。

  也就是說,pair實(shí)際上可以看作一個內(nèi)部有兩個元素的結(jié)構(gòu)體,且這兩個元素的類型是可以指定的,如下:

struct pair
{
    typeName1 first;
    typeName2 second;
};

二、pair的定義

  要使用pair,應(yīng)先添加頭文件#include<utility>,并在頭文件下面加上"using namespace std",然后就可以使用了。

   注意:由于map的內(nèi)部實(shí)現(xiàn)中涉及pair,因此添加map頭文件時會自動添加utility頭文件,此時如果需要使用pair,就不需要額外再去添加utility頭文件了。

//pair有兩個參數(shù),分別對應(yīng)first和second的數(shù)據(jù)類型,他們可以是任意基本數(shù)據(jù)類型或容器。
pair<typeName1,typeName2>name;
//想要定義參數(shù)為string和int類型的pair,如下:
pair<string,int>p;
//如果想在定義pair時進(jìn)行初始化,只需要跟上一個小括號,里面填寫兩個想要初始化的元素即可;
pair<string,int>p("haha",5);
//如果想要在代碼中臨時構(gòu)建一個pair,有如下兩種方法:
/*
    (1)將類型定義寫在前面,后面用小括號內(nèi)兩個元素的方式。
*/
pair<string,int>("haha",5);
/*
    (2)使用自帶的make_pair函數(shù)
*/
make_pair("haha",5);

三、pair中元素的訪問

pair中只有兩個元素,分別是firstsecond,只需要按正常結(jié)構(gòu)體的方式去訪問即可

#include<bits/stdc++.h>
using namespace std;

int main()
{
    pair<string,int>p;
    p.first="haha";
    p.second=5;
    cout<<p.first<<" "<<p.second<<endl;
    p=make_pair("xixi",55);
    cout<<p.first<<" "<<p.second<<endl;
    p=pair<string,int>("heihei",555);
    cout<<p.first<<" "<<p.second<<endl;
}

四、pair常用函數(shù)實(shí)例解析

(1)比較函數(shù)

兩個pair類型數(shù)據(jù)可以直接使用關(guān)系運(yùn)算符比較大小,
比較規(guī)則是先以first的大小作為標(biāo)準(zhǔn),只有first相等采取判斷second的大小

#include<bits/stdc++.h>
using namespace std;

int main()
{
    pair<int,int>p1(5,10);
    pair<int,int>p2(5,15);
    pair<int,int>p3(10,5);
    if(p1<p3)
        printf("p1<p3\n");
    if(p1<=p3)
        printf("p1<=p3\n");
    if(p1<p2)
        printf("p1<p2\n");
    return 0;
}

pair的常見用途

關(guān)于pair有兩個比較常見的例子:

  (1)用來代替二元結(jié)構(gòu)體及其構(gòu)造函數(shù),可以節(jié)省編碼空間

  (2)作為map的鍵值對來進(jìn)行插入,如下

#include<bits/stdc++.h>
using namespace std;

int main()
{
    map<string,int>mp;
    mp.insert(make_pair("hah",5));
    mp.insert(pair<string,int>("heihei",10));
    for(map<string,int>::iterator it=mp.begin();it!=mp.end();it++)
        cout<<it->first<<" "<<it->second<<endl;
    return 0;
}

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

相關(guān)文章

  • C++ boost scoped_ptr智能指針詳解

    C++ boost scoped_ptr智能指針詳解

    智能指針是一種像指針的C++對象,但它能夠在對象不使用的時候自己銷毀掉。雖然STL提供了auto_ptr,但是由于不能同容器一起使用(不支持拷貝和賦值操作),因此很少有人使用。它是Boost各組件中,應(yīng)用最為廣泛的一個
    2022-11-11
  • 淺談C++的幾種從鍵盤輸入方式

    淺談C++的幾種從鍵盤輸入方式

    今天小編就為大家分享一篇淺談C++的幾種從鍵盤輸入方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • C++類的靜態(tài)成員初始化詳細(xì)講解

    C++類的靜態(tài)成員初始化詳細(xì)講解

    通常靜態(tài)數(shù)據(jù)成員在類聲明中聲明,在包含類方法的文件中初始化.初始化時使用作用域操作符來指出靜態(tài)成員所屬的類.但如果靜態(tài)成員是整型或是枚舉型const,則可以在類聲明中初始化
    2013-09-09
  • 利用Matlab復(fù)刻掃雷小游戲

    利用Matlab復(fù)刻掃雷小游戲

    windows自帶的游戲《掃雷》是陪伴了無數(shù)人的經(jīng)典游戲,本程序參考《掃雷》的規(guī)則進(jìn)行了簡化,用Matlab實(shí)現(xiàn),感興趣的小伙伴可以學(xué)習(xí)一下
    2022-03-03
  • VC判斷一個文件為目錄的方法

    VC判斷一個文件為目錄的方法

    這篇文章主要介紹了VC判斷一個文件為目錄的方法,在Windows應(yīng)用程序設(shè)計中非常具有實(shí)用價值,需要的朋友可以參考下
    2014-10-10
  • C語言中使用lex統(tǒng)計文本文件字符數(shù)

    C語言中使用lex統(tǒng)計文本文件字符數(shù)

    這篇文章主要介紹了C語言中使用lex統(tǒng)計文本文件字符數(shù),本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-04-04
  • C++實(shí)現(xiàn)基于靜態(tài)數(shù)組的順序表

    C++實(shí)現(xiàn)基于靜態(tài)數(shù)組的順序表

    這篇文章主要介紹了C++實(shí)現(xiàn)基于靜態(tài)數(shù)組的順序表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • C語言memset函數(shù)詳解

    C語言memset函數(shù)詳解

    這篇文章主要介紹了C語言中的memset()函數(shù),包括其與memcpy()函數(shù)的區(qū)別,需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-09-09
  • C語言如何寫類實(shí)現(xiàn)教程示例

    C語言如何寫類實(shí)現(xiàn)教程示例

    這篇文章主要為大家介紹了C語言如何寫類的實(shí)現(xiàn)教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • C++ min/max_element 函數(shù)用法詳解

    C++ min/max_element 函數(shù)用法詳解

    這篇文章主要介紹了C++ min/max_element 函數(shù)用法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02

最新評論