Pair类型概述

pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下:

pair<int, string> a;

表示a中有两个类型,第一个元素是int型的,第二个元素是string类型的,如果创建pair的时候没有对其进行初始化,则调用默认构造函数对其初始化。

pair<string, string> a("James", "Joy");

也可以像上面一样在定义的时候直接对其初始化。

由于pair类型的使用比较繁琐,因为如果要定义多个形同的pair类型的时候,可以时候typedef简化声明:

typedef pair<string, string> author;

author pro("May", "Lily");

author joye("James", "Joyce");

Pair对象的操作

  • 对于pair类,由于它只有两个元素,分别名为first和second,因此直接使用普通的点操作符即可访问其成员

pair<string, string> a("Lily", "Poly");

string name;

name = pair.second;

  • 生成新的pair对象

可以使用make_pair对已存在的两个数据构造一个新的pair类型:

int a = 8;

string m = "James";

pair<int, string> newone;

newone = make_pair(a, m);

转载于:https://www.cnblogs.com/guohaoyu110/p/6770244.html

C++模板类之pair相关推荐

  1. STL中的模板类pair 和map http://blog.csdn.net/calvin_zcx/article/details/6072286

    STL中的模板类pair 和map 分类: 我的c++心得2010-12-13 00:45 5237人阅读 评论(0) 收藏 举报 pairiostreamiteratorstringfloatbas ...

  2. set, unordered_set模板类

    template<class Key,class Hash = std::hash<Key>,class KeyEqual = std::equal_to<Key>,cl ...

  3. C++模板及模板类(详解)

    目录 一.背景 二.代码 三.模板特化 一.背景 为什么要使用模板?以及为什么要使用模板类?为了减少重复代码,提高效率.比如你要实现一个相加函数,相加的类型有int,double,float,stri ...

  4. C++ 函数模板类模板详解

    在 C++ 中,模板分为函数模板和类模板两种.函数模板是用于生成函数的,类模板则是用于生成类的. 函数模板&模板函数     类模板&模板类  必须区分概念 函数模板是模板,模板函数时 ...

  5. C++深入理解模板类

    ++的语法真是太多了 首先,栈可以使用指针压栈吗? 当然可以,这里写一个简单的栈 提到指针,可能会想到字符串,我们可以有以下几种传入 string str; 最简单的传入,得益于C++提供的强大的st ...

  6. 用C语言实现模板类的一些个人思路

    用C语言实现模板类的一些个人思路 0. FAQ Q: 为什么要用模板? A: 为了解决函数重载问题.例如,在C++中,我们要比较两个int型变量的哪个大,并返回其中较大的值,可能会写这样的函数: in ...

  7. Eigen(1):Matrix模板类

    Matrix是一个模板类,利用模板类可以定义矩阵类. 矩阵类模板: 1Matrix类有6个模板参数,只需要了解前3个就好了. Matrix<typename Scalar, int RowsAt ...

  8. TermCriteria模板类

    学习写vo过程中遇到的 类功能:模板类,作为迭代算法的终止条件. 构造函数: TermCriteria(int type,int maxCount,double epsilon); 参数说明: typ ...

  9. Google Test(GTest)使用方法和源码解析——模板类测试技术分析和应用

    写C++难免会遇到模板问题,如果要针对一个模板类进行测试,似乎之前博文中介绍的方式只能傻乎乎的一个一个特化类型后再进行测试.其实GTest提供了两种测试模板类的方法,本文我们将介绍方法的使用,并分析其 ...

  10. OpenCV中的TermCriteria模板类

    2019独角兽企业重金招聘Python工程师标准>>> TermCriteria模板类,取代了之前的CvTermCriteria,这个类是作为迭代算法的终止条件的,这个类在参考手册里 ...

最新文章

  1. 微信小程序之录音与播放功能(完整示例demo)
  2. 运动目标检测ViBe算法
  3. python对文件的读操作方法有哪些-Python中文件的读取和写入操作
  4. zoj-What day is that day?
  5. Response_案例2_输出字符数据
  6. MongoDB索引问题
  7. finalshell日志乱码问题_Tomcat乱码问题
  8. 栅格矢量化_学会用栅格系统,普通LOGO秒变高大上
  9. 4. 2D绘制与控件绘制
  10. 宣布降低Windows Azure 存储和计算的价格
  11. 开课吧Java课堂:如何使用比较函数?
  12. 飞腾服务器自带的kvm管理,领存技术飞腾FT2000+ 2U 12盘位存储服务器
  13. linux中指令简约版
  14. 模式识别的发展及应用
  15. 手把手实现AI诗歌生成(AI写诗)
  16. 电脑xls图标未正常显示
  17. 基于深度强化学习的智能船舶航迹跟踪控制
  18. sql语句执行顺序及简单优化
  19. itest英语考试bug_iTEST爱考试
  20. 太空避难所修改数据(船员和货币)

热门文章

  1. python内容限制_Python --类,实例和访问限制
  2. 什么?都2021年了还不会ajax嘛,来这里让您快速学会Ajax
  3. 米线店结账程序 装饰着模式_真实数据:外卖销售9999+ 长沙米线万单店 它究竟是怎么做到的?...
  4. java对象创建的细节
  5. java 垃圾回收入门
  6. lua 面向对象入门
  7. SparkStreaming DStream入门及其算子应用
  8. WinDbg常用命令For Kernel Debug
  9. Volley 源码分析
  10. 自动化测试基础篇--Selenium中数据参数化之TXT