zoukankan      html  css  js  c++  java
  • 4.1 pair类模板

    在学习关联容器之前,首先先要了解一下STL中的pair类模板,因为关联容器的一些成员函数返回值都是pair对象,而且map 和multimap中的元素都是pair对象。

    1)pair类模板定义

    pair实例化出来以后的类都有两个成员变量,一个是first,另一个是second。

    STL中还有一个make_pair()函数模板,可以返回一个pair模板对象。源码如下:

    template<class T1, class T2>

    pair<T1,T2>make_pair(T1 x, T2 y)

    {
         return (pair<T1,T2>(x,y);

    }

    2)pair和make_pair的用法

    //program 19.4.1.cpp  pair和make_pair的用法:
    #include <iostream>
    using namespace std;
    int main()
    {
        pair<int,double> p1; 
        cout << p1.first << "," << p1.second << endl; //输出  0,0    
        pair<string,int> p2("this",20); 
        cout << p2.first << "," << p2.second << endl; //输出  this,20
        pair<int,int> p3(pair<char,char>('a','b'));   //用第三个构造函数初始化(第三个构造函数是函数模板,参数是一个pair类对象的引用),
                                                     //因此生成一个临时对象来进行初始化 
        cout << p3.first << "," << p3.second << endl; //输出  97,98
        pair<int,string> p4 = make_pair(200,"hello");
        cout << p4.first << "," << p4.second << endl; //输出  200,hello
        return 0;
    }

    注意长注释

  • 相关阅读:
    linux安装nginx
    git配置多个SSH密钥
    webpack加载器安装node-sass失败的解决方法
    Vue-cli webpack打包之后index.html缺少引号的问题
    算法:一个数组中所有元素的最小公倍数
    JS 实现一个睡眠函数sleep
    剑指offer 牛客67道题集合
    剑指offer
    剑指offer
    剑指offer
  • 原文地址:https://www.cnblogs.com/by-dxm/p/5473456.html
Copyright © 2011-2022 走看看