C++STL常用操作之pair篇

C++STL常用操作之pair篇


简介:

pair(英文意义是一对、一双、对子)。没错,C++中pair就是一对的意思。

其功能就是将一对值组合成为一个值,这一对值可以具有不同的数据类型(T1,T2),两个值可以分别用pair的两个公有函数first和second访问。可以和struct做一些类比,但是它的使用会方便很多。

#include<utility>
template <class T1, class T2> struct pair;

头文件在代码中已经存在std的时候,就不需要再引用了

using namespace std;

即相当一部分代码中都会写上这个语句,而std中会对pair进行重复申明,那么我们可以不引用头文件以节约资源。

1.构造

pair<int, int> p1;							//默认构造函数
pair<int, double> p2(1, 1.5);				//给定值的构造函数
pair<string, int> p3 = make_pair("pair", 4);//利用make_pair赋值
pair<string, int> p4(p3);					//拷贝构造函数

first和second可以是任意类型,也可以是自定义的struct类型。

2.访问、获取

pair<int, double> p1(1, 1.5);				//给定值的构造函数
p1.first = 2;
p1.second = 2.5;
cout << p1.first << endl << p1.second << endl;

在这里插入图片描述

比如在一个函数需要有两个返回值的时候,如果是相同的类型,可能会想到用数组,那么如果不是相同类型的,可能会想到用一个struct,但是为了使用方便可以直接使用c++自带的pair。

那么问题来了,如果需要三个返回值呢?

极端!

pair<int, pair<int, int>> p;
p.first = 1;
p.second.first = 2;
p.second.second = 3;
cout << p.first << endl << p.second.first << endl << p.second.second << endl;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yDb6dITb-1610692379572)(C:\Users\30360\Pictures\Saved Pictures\222.png)]


pair基础知识!

发现问题欢迎指正!

希望能帮助到你!有问题请留言!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alan_Lowe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值