C# · 12月 19, 2021

c/c++ 标准库 pair 详细讲解及使用实例分析

标准库 pair 介绍

问题:map里的元素由key和value组成,这个key和value的组合是什么类型呢???

答案:pair类型

pair介绍:

它是模板

有2个公有成员可供访问。 first和second。

make_pair函数能返回一个pair

可以进行 ==,!=,=运算

//由参数1和2推导出类型为

auto ap1 = make_pair(1,2);

pair ap2(ap1);

小例子:

#include

#include

using namespace std;

pair process(vector &v){

if(!v.empty()){

return pair(v.back(),v.back().size());

}

else{

return pair();

}

}

int main(){

pair p1{“”,””};

pair cnt{“last”,5};

pair li;

cout << cnt.first << " " << cnt.second << endl;

vector svec{“aa”,”last”};

pair cnt2 = process(svec);

cout << cnt2.first << " " << cnt2.second << endl;

if(cnt2 == cnt){

cout << "euqal" << endl;

}

if(cnt2 < cnt){

cout << "less" << endl;

}

//由参数1和2推导出类型为 ap2(ap1);

}