STL--pair
头文件 #include
pair的应用:
1:pair是将2个数据组合成一组数据,当需要这样的需求时就可以使用pair,如stl中的map就是将key和value放在一起来保存。
2:当一个函数需要返回2个数据的时候,可以选择pair。 pair的实现是一个结构体,主要的两个成员变量是first second 因为是使用struct不是class,所以可以直接使用pair的成员变量。
定义与初始化:
1:pair<double,double>p1;//创建一个空的pair对象,数据类型都是double 2::pair<int,int>p2(a,b);//创建一个pair对象,并用a,b对它赋初值。 3:make_pair(a,b);//以a,b的值创建一个pair类型数据,数据类型是a,b的类型 4:pair<int,int>p3(p2)//拷贝构造初始化 5:pair<double,doubel>p4=p1;//变量间赋值初始化
pair对象的操作
1:p1>p2//优先比较第一个键值,再比较第二个键值,以字典序的方式。 2:p1==p2//两个键值的值完全相同。 3:cin >> p1.first >> p1.second;//通过两个键值访问数据元素。
当pair对象作为函数返回值时的应用
#include<bits/stdc++.h> using namespace std; pair<int,int>solve() { pair<int,int>p(1,2); return p; } int main() { pair<int,int> q = solve(); cout<<q.first<<" "<<q.second<<endl; return 0; }