STL pair的用法

pair的本质就是结构体

pair包含两个元素first,second,和结构体一样用“.”来访问和修改,只是使用起来比结构体方便而已,两个元素可以自定义类型,可以为数组或者结构体。

重载了<、>、<=、>=、==、!=六个运算符

其规则是先比较first,first相等时再比较second,这符合大多数应用的逻辑。当然,也可以通过重载这几个运算符来重新指定自己的比较逻辑。

包含了成员函数make_pair

使用方法如下

#include<iostream>
using namespace std;
int main()
{
    pair<int,int>p1(2,3);    //自定义初值
    pair<int,int>p2(p1);     //拷贝
    pair<int,int>p3=p2;   
    cout<<p3.first<<endl<<p3.second<<endl;
    pair<int,double>p;     //默认初值为0
    p=make_pair(1,1.1);     //赋值
    cout<<p.first<<endl<<p.second<<endl;
    return 0;
}


pairSTL中的一个容器,用于将两个数据组合成一组数据。它在一些场景下非常有用,比如用作map的键值对插入,或者当一个函数需要返回两个数据时可以选择使用pair。你可以通过pair的first和second成员访问其中的元素。例如,如果有一个pair<int, int> p,你可以使用p.first访问第一个元素,使用p.second访问第二个元素。在C++中,pair的实现是一个结构体。以下是一个示例代码,展示了pair的使用方法: ``` #include <utility> #include <iostream> using namespace std; int main(){ pair<int, int> p<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [c++ STL pair简单用法](https://blog.csdn.net/weixin_45063703/article/details/127915225)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [C++ pair的基本用法总结整理](https://download.csdn.net/download/weixin_38621624/13709830)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [STL之pair常见用法详解](https://blog.csdn.net/qq_41140987/article/details/106120500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值