博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++容器(三):pair类型
阅读量:6070 次
发布时间:2019-06-20

本文共 1406 字,大约阅读时间需要 4 分钟。

pair类型

在开始介绍之前,我们有必要了解一种与之相关的标准库类型–pair类型。

操作 含义
pair<T1, T2> p1 创建一个空的pair对象,它的两个元素分别为T1T2类型,采用值初始化
pair<T1, T2> p1(v1, v2) 创建一个pair对象,它的两个元素分别是T1T2类型,其中first成员初始化为v1second成员初始化为v2
make_pair(v1,v2) v1v2创建一个新的pair对象,其元素类型分别是v1v2的类型
p1 < p2 两个pair对象之间的小于运算,其定义遵循字典顺序:如果p1.first < p2.first或者!(p2.first < p1.first) && p1.second < p2.second,则返回true
p1 == p2 如果两个pair对象的firstsecond成员依次相等,则两个对象相等,返回true
p.first 返回p中名为first的(公有)数据成员
p.second 返回p中名为second的(公有)数据成员

pair类型包含两个数据值,与容器一样,pair也是一种模板类型。在创建pair对象时,必须提供两个类型名:pair对象所包含的两个数据成员各自对应的类型名字,这两个类型名字不必相同:

pair
strs; // holds two stringpair
wordCount; // holds a string and an intpair
> line; // holds a string and a vector

如果在创建pair对象时不提供初始化式,则调用默认构造函数对其成员采用值初始化。当然,也可以定义时提供初始化式:

pair
author("James", "Joyce");// or use typedef typedef pair
Author;Author author("Marcel", "Joyce");

生成新的pair对象,除了上述的利用构造函数方法外,标准库中定义的make_pair函数,由传递给它的两个实参生成一个新的pair对象:

pair
nextAuthor;string first, second;while( cin >> first >> second){ // generate a pair from first and last nextAuthor = make_pair( first, second ); // process nextAuthor ...}// ornextAuthor = pair
(first, second);// orcin >> nextAuthor.first >> nextAuthor.second;

参考文献:

  • 《C++ Primer中文版(第四版)》,Stanley B.Lippman et al. 著, 人民邮电出版社,2013。

转载于:https://www.cnblogs.com/hehehaha/p/6332238.html

你可能感兴趣的文章
QTcpSocket 发送和接收数据的几种方法
查看>>
springboot-5-整合jpa
查看>>
40个新鲜的 jQuery 插件,使您的网站用户友好
查看>>
Android Studio设置图片背景及主题设置
查看>>
mysql function动态执行不同sql语句
查看>>
maven docker plugin 常见问题解决
查看>>
linux下查看各硬件型号
查看>>
仿&lt;赶集生活&gt;client启动动画效果
查看>>
HBase表的架构原理
查看>>
C#加减乘除
查看>>
蓝牙通讯神器
查看>>
spring boot 1.5.2 操作mongodb3.4.0
查看>>
互联网支付系统整体架构详解(转)
查看>>
调整代码生成工具Database2Sharp的Winform界面生成,使其易于列表工具栏的使用。...
查看>>
C++ primer 模板与泛型编程
查看>>
哲学的三个终极问题
查看>>
151. [USACO Dec07] 建造路径
查看>>
RPi 3.5寸 电阻屏
查看>>
wcf rest系列文章
查看>>
(转)SpringMVC学习(五)——SpringMVC的参数绑定
查看>>