欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

談?wù)凜++學(xué)習(xí)之Pair的使用方法

 更新時(shí)間:2016年12月21日 11:10:07   作者:OceanLight  
pair是一種模板類型,其中包含兩個(gè)數(shù)據(jù)值,兩個(gè)數(shù)據(jù)的類型可以不同,本篇詳細(xì)的介紹了Pair的使用方法和實(shí)例,有興趣的同學(xué)可以了解一下。

一、Pair類型概述

pair是一種模板類型,其中包含兩個(gè)數(shù)據(jù)值,兩個(gè)數(shù)據(jù)的類型可以不同,基本的定義如下:

pair<int, string> a;

表示a中有兩個(gè)類型,第一個(gè)元素是int型的,第二個(gè)元素是string類型的,如果創(chuàng)建pair的時(shí)候沒有對其進(jìn)行初始化,則調(diào)用默認(rèn)構(gòu)造函數(shù)對其初始化。

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

也可以像上面一樣在定義的時(shí)候直接對其初始化。

由于pair類型的使用比較繁瑣,因?yàn)槿绻x多個(gè)形同的pair類型的時(shí)候,可以時(shí)候typedef簡化聲明:

typedef pair<string, string> author;
author pro("May", "Lily");
author joye("James", "Joyce");

、Pair對象的操作

1、對于pair類,由于它只有兩個(gè)元素,分別名為first和second,因此直接使用普通的點(diǎn)操作符即可訪問其成員

pair<string, string> a("Lily", "Poly"); 
string name;
name = pair.second;

2、生成新的pair對象

可以使用make_pair對已存在的兩個(gè)數(shù)據(jù)構(gòu)造一個(gè)新的pair類型:

int a = 8;
string m = "James";
pair<int, string> newone;
newone = make_pair(a, m);

三、編程實(shí)踐

練習(xí):編寫程序讀入一系列string和int型數(shù)據(jù),將每一組存儲在一個(gè)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;
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論