当前位置: 首页 > news >正文

C++pair学习笔记

1. 定义

pair 是需要头文件 <utility>,可以用于存储两个不同(或相同)类型的数据,标志为 键值对二元组

2. 基本用法

定义:

pair<T1,T2> name;

T1T2 为两个类型,namepair 的名称。

初始化:

// 方式1:默认构造(值未初始化)
pair<int,string> p1;// 方式2:直接初始化(按顺序传参)
pair<int,string> p2(1,"hello");// 方式3:拷贝初始化
pair<int,string> p3=make_pair(2,"world");  // make_pair自动推导类型// 方式4:C++11列表初始化
pair<int,string> p4{3,"test"};

3. 成员访问

  • 两个成员变量为公有,直接通过 firstsecond 访问:
cout<<p2.first;   // 输出第一个元素(int型:1)
cout<<p2.second;  // 输出第二个元素(string型:"hello")

4. 常用操作

(1)赋值

p1=p2;//整体赋值
p1=make_pair(5,"ok");//通过make_pair赋值,按顺序传参

(2)比较运算

支持 ==!=<<=>>=,比较规则:

  • 先比较 first,若不等则结果由 first 决定;

  • first 相等,再比较 second

pair<int,int> a(1,2),b(1,3);a<b;//true(first相等,second 2<3)

(3)交换

swap(p1,p2);//交换两个pair的内容(需同类型)
http://www.dtcms.com/a/592664.html

相关文章:

  • 泉州网站建设平台项目计划书怎么做
  • Matplotlib Pyplot各种函数对比详解以及隐式显式对比详解
  • SQL,CROSS JOIN速度优化
  • 企业网站实名认证时间设计有关的网站
  • [免费]基于Python的农产品可视化系统(Django+echarts)【论文+源码+SQL脚本】
  • 【题解】P2472 [SCOI2007] 蜥蜴 [网络流]
  • RV1126 NO.47:RV1126+OPENCV对视频流进行视频腐蚀操作
  • 消息称苹果 iPhone 17 系列国内激活销量超 825 万
  • 狠狠做网站 百度一下做家政服务网站
  • 企业网站 php定制软件开发公司
  • SAP-ABAP:SAP 系统与外部服务的 HTTP 通信cl_http_client 的深度解析与应用实践
  • COC Asia 2025|得帆云 ETL:顺应 Hive 新特性,重塑数据管道的未来
  • 深度学习:基于YOLOv8模型的海洋生物目标检测系统 深度学习 pytorch 计算机 PySide6界面✅
  • 学习随笔-http和https有何区别
  • 八、深度学习中的正则化
  • Vue中使用axios+pinia实现token续期功能,自动刷新token
  • Pano2vr6制作全景html5
  • 100% 本地 MCP 客户端 + SQLite 服务器(LlamaIndex + Ollama + Qwen2.5)
  • 博客网站素材免费静态网站模板下载
  • 做营销网站建设北仑网站建设案例
  • HarmonyOS:相对布局(RelativeContainer)
  • 【数据库】国产数据库替代实战:金仓KES如何以“智能运维 + 低资源占用”年省百万运维成本?
  • pandas__unstack方法与set_index详解
  • JS 前端存储实战指南:从基础缓存到离线数据库,构建可靠的数据持久化体系
  • Python应用开发学习:Pygame中实现切换开关及鼠标拖动连续填充功能
  • 2025年--Lc231-350. 两个数组的交集 II-Java版
  • 调试原理[简要描述]
  • NVLink技术
  • 栖霞建设网站响应式网站建设免费
  • 零样本数据集(不需要样本级文本)