源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

谈谈C++学习之Pair的使用方法

  • 时间:2020-03-10 15:12 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:谈谈C++学习之Pair的使用方法
[b]一、Pair类型概述[/b] 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");
[b]二[/b]、[b]Pair对象的操作[/b] 1、对于pair类,由于它只有两个元素,分别名为first和second,因此[b]直接使用普通的点操作符即可访问其成员 [/b]
pair<string, string> a("Lily", "Poly"); 
string name;
name = pair.second;
[b]2、生成新的pair对象[/b] 可以使用make_pair对已存在的两个数据构造一个新的pair类型:
int a = 8;
string m = "James";
pair<int, string> newone;
newone = make_pair(a, m);
[b]三、编程实践[/b] 练习:编写程序读入一系列string和int型数据,将每一组存储在一个pair对象中,然后将这些pair对象存储在vector容器
#include<iostream>
#include<string>
#include<vector>
#include<utility>
using namespace std;

int main()
{
  pair<string, int>p;
  typedef vector< pair<string, int> > VP;
  VP vp;
  while(cin>>p.first>>p.second)
  {
    vp.push_back(make_pair(p.first,p.second));
    
  }
  VP::iterator it;
  for(it=vp.begin(); it!=vp.end(); it++)
    cout<<it->first<<","<<it->second<<endl;

  return 0;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部