日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++语言基础 —— STL —— 容器与迭代器 —— pair

發(fā)布時間:2025/3/17 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++语言基础 —— STL —— 容器与迭代器 —— pair 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

【概述】

pair 是定義在 <utility> 頭文件中的一個簡單的模板類,常用于表示一個二元組或元素對,且其提供了按照字典序?qū)υ貙M行大小比較的比較運算符模版函數(shù)。

定義:?pair<T1,T2> pairName

參數(shù):T1 是第一個值的數(shù)據(jù)類型,T2 是第二個值的數(shù)據(jù)類型。

【構(gòu)造與訪問】

  • pair<T1,T2> p:構(gòu)造一個空 pair,其中無任何元素
  • pair<T1,T2> p(elem1,elem2):構(gòu)造一個元素值分別為 elem1、elem2 的 pair
  • pair<T1,T2> p1(p2):產(chǎn)生另一個同型 pair?的副本,所有元素都被復(fù)制

pair 的一對值可以具有不同的數(shù)據(jù)類型(T1 和 T2),兩個值可以分別通過其公有函數(shù) first、second 來進行訪問與賦值。

pair<int, string> p1; //默認構(gòu)造函數(shù) pair<string, double> p2("abc’", 100); //重載構(gòu)造函數(shù) pair<string, double> p3(p2); //復(fù)制構(gòu)造函數(shù)//訪問 cout << p2.first << " " << p2.second << endl; cout << p3.first << " " << p3.second << endl;

使用技巧:由于 pair 類型比較繁瑣,若要定義多個 pair 類型時,可以使用 typedef 簡化聲明

typedef pair<string, string>?name; name name1("May", "Lily"); name name2("James", "Joyce");

【賦值】

1.利用?make_pair() 函數(shù)來賦值

pair<int, double> p1; p1 = make_pair(1, 1.2);

2.變量間賦值

pair<int, double> p1(1, 1.2); pair<int, double> p2 = p1;

【運算符的重載】

在 <utility> 中,已經(jīng)定義了 pair 上的六個比較運算符:<、>、<=、>=、==、!=,其基本規(guī)則是先比較 first,當 first 相等時再比較 second,若想重定義自己的比較邏輯,可以通過重載運算符來重新指定比較邏輯。

pair<int, double> p1(1, 2.5); pair<int, double> p2(2, 2.5); pair<int, double> p3(2, 3.5);//結(jié)果:p1<p2 if(p1>=p2)cout<<"p1>=p2"<<endl; elsecout<<"p1<p2"<<endl;//結(jié)果:p2<p3 if(p2<p3)cout<<"p2<p3"<<endl; elsecout<<"p2>=p3"<<endl;

【應(yīng)用】

pair 主要的作用是將兩個數(shù)據(jù)組合成一個數(shù)據(jù),兩個數(shù)據(jù)可以是同一類型或者不同類型。

其實質(zhì)上是一個結(jié)構(gòu)體,主要的兩個成員變量是 first 和 second,這兩個變量可以直接使用。

最常用的例子就是在構(gòu)建二維坐標系的點時,可以使用 pair 來構(gòu)造
?

?

總結(jié)

以上是生活随笔為你收集整理的C++语言基础 —— STL —— 容器与迭代器 —— pair的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。