定义
想要将两个元素绑在一起作为合成元素,又不想定义结构体,用pair.
#include<map>//头文件
pair<typename1,typename2> name;//定义
初始化
#include<cstdio>
#include<iostream>
#include<map>
using namespace std;
pair<string,int> p("hahaha",5);//初始化
int main(){
cout<<p.first<<" "<<p.second<<endl;
}
临时构建
两种方法
pair<string,int>("haha",4);
make_pair("haha",4);
元素的访问
pair只有两个元素first、second,只需要按正常结构体的方式去访问即可
常用函数
比较操作数
两个pair类可以直接比较大小,比较规则是以first的大小作为标准,只有当first相等时才去判别second的大小
#include<cstdio>
#include<iostream>
#include<map>
using namespace std;
int main(){
pair<int,int> p1(5,10);
pair<int,int> p2(5,12);
pair<int,int> p3(6,12);
if(p1<p2) cout<<"p1<p2"<<endl;
else cout<<"p1>p2"<<endl;
if(p2<p3) cout<<"p2<p3"<<endl;
else cout<<"p2>p3"<<endl;
}
常见用途
用来代替结构体,节省时间
作为map键值插入