ฅ(๑˙o˙๑)ฅ 大家好, 欢迎大家光临我的博客:面向阿尼亚学习
算法学习笔记系列持续更新中~
一、前言
c++中的结构模板,定义在头文件中,提供一个包含2个数据成员的结构体模板。通过
first
,second
访问2个成员。
pair【套娃模拟器】
//pair可以理解成这么一个结构体:
template<typename T1,typename T2>
struct node{
T1 first;
T2 second;
};
二、pari的定义和初始化方式
定义:
pair是将2个数据组合成一个数据,当需要这样的需求时就可以使用pair。
pair <类型,类型> 变量名; 两个类型可以不同
初始化方式:
假设有个pair <int,string> p;
第一种:
p = make_pair(10,"abc");
第二种:
p = {10,"abc");
三、pari的常用函数
first(); 第一个元素
second(); 第二个元素
四、pair和其他容器的嵌套
//与vector结合【再写个vector结合即可】
vector< vector<pair<int, int> > >
//套娃操作 用pair存储3个数据
pair<int, pair<int, int>> p(1,{2,3});
pair<int,pair<double,string> > p;
///里面的pair的尖括号后面最好跟一个空格,否则有的编译器会认成>>操作符从而导致编译错误。
//与map嵌套
map<pair<int,int>,int>flag;
最后
莫言真理无穷尽,寸进自有寸进欢