首页 > 其他分享 >数据结构之结构体进阶——pair

数据结构之结构体进阶——pair

时间:2024-03-31 13:31:31浏览次数:19  
标签:初始化 进阶 定义 stu second pair 数据结构 first

前言:


当结构体中只有两个元素时,去定义结构体时太过于繁琐了,在C++中有特定的函数可以简化这种结构体的定义。

 pair的定义:

有两个元素的结构体,其中为first,second元素,其中first,second的类型可以自己定义。

 pair的创建:

文字解释:

官方给予的定义:template <class T1, class T2> struct pair

                  解释:pair<first的类型,second的类型>名称;

 代码例举:
pair<char,int> stu;

pair的初始化:

1.可以直接在定义的名称后添加(first的值,second的值)来进行初始化。

pair<char, int> stu('leo', 1);

2.也可以通过make_pair(first的值,second的值) 来构建初始化。

pair<char, int> stu;
stu=make_pair('leo', 1);

pair的访问:

代码:
cout<<stu.first;
cout<<stu.second;
结果:

标签:初始化,进阶,定义,stu,second,pair,数据结构,first
From: https://blog.csdn.net/qq_60624992/article/details/137187526

相关文章

  • DIjkstra进阶模板 路径记录 按权重(结点数最小等)记录
    structDIJ{usingi64=longlong;usingPII=pair<i64,i64>;vector<i64>dis,path,node;vector<vector<array<int,3>>>G;intn;DIJ(){}DIJ(intn):n(n){node.resize(n+1,1);......
  • Pintia 天梯地图 dijkstra进阶
    7-14天梯地图-SMU2024spring天梯赛3(补题)(pintia.cn)dijkstra进阶做法,包含路径记录,以及按权重统计路径条件等;不过最开始我一直将优先队列开的最大堆,但是一直过不了自己的例子,后来改成最小堆并且路径值改成负数存进去就对了,再后来我发现改成最大堆也可以,不过要把......
  • Python之Opencv进阶教程(2):统计图片灰度级别的像素数量
    1、什么是灰度像素数量在OpenCV中,可以使用**cv2.calcHist()**函数来计算图像的直方图。直方图是一种图形统计表,用于表示图像中每个灰度级别(或颜色通道)的像素数量或密度分布。以下是一个示例代码,演示了如何使用OpenCV计算和绘制图像的直方图:2、代码importcv2ascvimpor......
  • Python之Opencv进阶教程(1):图片模糊
    1、Opencv提供了多种模糊图片的方法加载原始未经模糊处理的图片importcv2ascvimg=cv.imread('../Resources/Photos/girl.jpg')cv.imshow('girl',img)1.1平均值关键代码#Averaging平均值a......
  • java数据结构与算法刷题-----LeetCode1091. 二进制矩阵中的最短路径
    java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846文章目录广度优先+双分裂蛇广度优先+双分裂蛇双分裂蛇:是求二维表中从起点到终点的经典思路(也是......
  • java数据结构与算法刷题-----LeetCode95. 不同的二叉搜索树 II
    java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846文章目录分治回溯+记忆化搜索分治回溯+记忆化搜索卡特兰数,例如对于n个进栈元素,有多少种出栈顺序,......
  • Python 潮流周刊第 44 期(摘要)+ 赠书 5 本《明解Python算法与数据结构》
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。周刊全文:https://pythoncat.top/posts/2024-03-30-weekly特别提醒:本期赠书5......
  • 数据结构 —— 线性表的链式存储(链表)(C++)
    目录单链表(有头结点)定义初始化判空销毁清空求表长取值查找插入删除创建头部创建尾部创建本文相关知识:以链式存储结构来实现线性表(C++)如有错误请指正~~谢谢~后面更新循环链表和双向链表单链表(有头结点)以带头结点的单链表为例,操作更加简便!定义首先,为了增强程序的可读性,做出以......
  • 数据结构与算法——栈的使用
    栈是一种具有特定操作规则的数据结构,遵循先进后出(FILO)的原则,即最后进入的元素最先被访问或移除。栈通常用于需要临时存储数据,以及实现逆序输出、函数调用和表达式求值等场景。基本操作:创建栈、压栈(入栈)、弹栈(出栈)、获取栈顶元素、判断栈是否为空等。代码如下:importja......
  • 数据结构与算法——双向链表的使用原理
    双向链表是一种特殊链表,每个节点包含两个指针,一个指向前一个节点,一个指向后一个节点。双向链表可以支持双向遍历,插入和删除操作更加高效。双向链表的基本操作包括插入、删除、查找等。双向链表的常见应用场景包括LRU缓存淘汰算法、双向队列等需要频繁在两端进行操作的场景......