日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

C++容器(三):pair类型

發(fā)布時間:2025/7/14 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++容器(三):pair类型 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

pair類型

在開始介紹關聯(lián)容器之前,我們有必要了解一種與之相關的標準庫類型–pair類型。

操作含義
pair<T1, T2> p1創(chuàng)建一個空的pair對象,它的兩個元素分別為T1和T2類型,采用值初始化
pair<T1, T2> p1(v1, v2)創(chuàng)建一個pair對象,它的兩個元素分別是T1和T2類型,其中first成員初始化為v1,second成員初始化為v2
make_pair(v1,v2)以v1和v2創(chuàng)建一個新的pair對象,其元素類型分別是v1和v2的類型
p1 < p2兩個pair對象之間的小于運算,其定義遵循字典順序:如果p1.first < p2.first或者!(p2.first < p1.first) && p1.second < p2.second,則返回true
p1 == p2如果兩個pair對象的first和second成員依次相等,則兩個對象相等,返回true
p.first返回p中名為first的(公有)數據成員
p.second返回p中名為second的(公有)數據成員

pair類型包含兩個數據值,與容器一樣,pair也是一種模板類型。在創(chuàng)建pair對象時,必須提供兩個類型名:pair對象所包含的兩個數據成員各自對應的類型名字,這兩個類型名字不必相同:

pair<string, string> strs; // holds two string pair<string, int> wordCount; // holds a string and an int pair<string, vector<int>> line; // holds a string and a vector<int>

如果在創(chuàng)建pair對象時不提供初始化式,則調用默認構造函數對其成員采用值初始化。當然,也可以定義時提供初始化式:

pair<string, string> author("James", "Joyce");// or use typedef typedef pair<string, string> Author; Author author("Marcel", "Joyce");

生成新的pair對象,除了上述的利用構造函數方法外,標準庫中定義的make_pair函數,由傳遞給它的兩個實參生成一個新的pair對象:

pair<string, string> nextAuthor; string first, second; while( cin >> first >> second) {// generate a pair from first and lastnextAuthor = make_pair( first, second );// process nextAuthor ... }// or nextAuthor = pair<string, string>(first, second);// or cin >> nextAuthor.first >> nextAuthor.second;

參考文獻:

  • 《C++ Primer中文版(第四版)》,Stanley B.Lippman et al. 著, 人民郵電出版社,2013。

轉載于:https://www.cnblogs.com/hehehaha/p/6332238.html

總結

以上是生活随笔為你收集整理的C++容器(三):pair类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。