当前位置: 移动技术网 > IT编程>开发语言>C/C++ > c/c++ 标准库 pair 介绍

c/c++ 标准库 pair 介绍

2018年09月23日  | 移动技术网IT编程  | 我要评论

杜雪雯,渡边美作,视网膜屏是什么意思

标准库 pair 介绍

问题:map里的元素由key和value组成,这个key和value的组合是什么类型呢???

答案:pair类型

pair介绍:

  • 它是模板
  • 有2个公有成员可供访问。 first和second。
  • make_pair函数能返回一个pair
  • 可以进行 ==,!=,<=,<, >, >=运算
//由参数1和2推导出类型为<int, int>                                     
auto ap1 = make_pair(1, 2);
pair<int, int> ap2(ap1);

小例子:

#include <iostream>
#include <vector>

using namespace std;

pair<string, int> process(vector<string> &v){
  if(!v.empty()){
    return pair<string, int>(v.back(), v.back().size());
  }
  else{
    return pair<string, int>();
  }
}
int main(){
  pair<string, string> p1{"",""};
  pair<string, size_t> cnt{"last",5};
  pair<string, vector<int>> li;
  cout << cnt.first << " " << cnt.second << endl;
  vector<string> svec{"aa", "last"};
  pair<string, size_t> cnt2 = process(svec);
  cout << cnt2.first << " " << cnt2.second << endl;
  if(cnt2 == cnt){
    cout << "euqal" << endl;
  }
  if(cnt2 < cnt){
    cout << "less" << endl;
  }
  //由参数1和2推导出类型为<int, int>                                           
  auto ap1 = make_pair(1, 2);
  pair<int, int> ap2(ap1);
}

c/c++ 学习互助qq群:877684253

本人微信:xiaoshitou5854

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网