STL模板整理 pair

pair

pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同。如果一个函数有两个返回值的话,如果是相同类型,就可以用数组返回,如果是不同类型,就可以自己写个struct ,但为了方便就可以使用 c++自带的pair ,返回一个pair,其中带有两个值。除了返回值的应用,在一个对象有多个属性的时候 ,一般自己写一个struct ,如果就是两个属性的话,就可以用pair 进行操作。pair 可以省的自己写一个struct .如果有三个属性的话,其实也是可以用的pair 的 ,极端的写法 pair <int ,pair<int ,int > >写法极端。(后边的两个 > > 要有空格,否则就会是 >>位移运算符)

类模板:template<class T1,class T2> struct pair  // T1是第一个值的数据类型,T2是第二个值得数据类型

定义:

#include <iostream>
#include <utility>
using namespace std;
/*
pair<int, double> p1;  //使用默认构造函数
pair<int, double> p2(1, 2.4);  //用给定值初始化
pair<int, double> p3(p2);  //拷贝构造函数
*/
int main() {
    pair<int, double> p1;  //使用默认构造函数
    p1.first = 1;
    p1.second = 1.5;
    cout << p1.first << " " << p1.second << endl;
    p1 = make_pair(1,2.5);
    cout << p1.first << " " << p1.second << endl;
    return 0;
}

 

posted @ 2018-03-29 19:43  GHzz  阅读(104)  评论(0编辑  收藏  举报