标准库 pair 介绍
问题:map里的元素由key和value组成,这个key和value的组合是什么类型呢???
答案:pair类型
pair介绍:
- 它是模板
- 有2个公有成员可供访问。 first和second。
- make_pair函数能返回一个pair
- 可以进行 ==,!=,<=,<, >, >=运算
//由参数1和2推导出类型为<int, int>
auto ap1 = make_pair(1, 2);
pair<int, int> ap2(ap1);
小例子:
#include <iostream>
#include <vector>
using namespace std;
pair<string, int> process(vector<string> &v){
if(!v.empty()){
return pair<string, int>(v.back(), v.back().size());
}
else{
return pair<string, int>();
}
}
int main(){
pair<string, string> p1{\"\",\"\"};
pair<string, size_t> cnt{\"last\",5};
pair<string, vector<int>> li;
cout << cnt.first << \" \" << cnt.second << endl;
vector<string> svec{\"aa\", \"last\"};
pair<string, size_t> cnt2 = process(svec);
cout << cnt2.first << \" \" << cnt2.second << endl;
if(cnt2 == cnt){
cout << \"euqal\" << endl;
}
if(cnt2 < cnt){
cout << \"less\" << endl;
}
//由参数1和2推导出类型为<int, int>
auto ap1 = make_pair(1, 2);
pair<int, int> ap2(ap1);
}
继续阅读与本文标签相同的文章
下一篇 :
C++笔试题字符比较
-
目前Web前端就业前景如何 前端应用于哪些领域
2026-05-18栏目: 教程
-
kubernetes Service:让客户端发现pod并与之通信
2026-05-18栏目: 教程
-
新版本上线前期,产品经理要做那几点事?
2026-05-18栏目: 教程
-
每天都在用printf,你知道变长参数是怎么实现的吗
2026-05-18栏目: 教程
-
Dremio与Drill的对比
2026-05-18栏目: 教程
