• pair常见用法


    pair的使用

    关于pair

    什么是pair

    可以将pair看做一个内部有两个元素的结构体,且两个元素的类型是可以指定的。

    struct pair{
        typename1 first;
        typename2 second;
    }
    

    何时使用pair

    当想要将两个元素绑在一起作为一个合成元素,又不想要定义结构体的时候,使用pair可以方便地作为一个替代品。

    pair的定义

    头文件引入

    # include <utility>
    using namespace std;
    

    定义

    普通定义

    //typename1,typename2可以是任何类型,容器或者基础类型
    pair<typename1,typename2> p;
    //string和int
    pair<string,int>p;
    //定义初始化
    pair<string,int>p("hahaha",1);
    

    临时定义

    //1.构建匿名pair对象
    pair<string,int> p("haha",1);
    //2.使用自带的make_pair函数
    make_pair("haha",1);
    

    pair中元素访问

    # include <utility>
    # include <iostream>
    using namespace std;
    int main(void)
    {
        pair<string,int> p;
        p.first="hahaha";
        p.second=5;
        cout<<p.first<<" "<<p.second<<endl;
        p=make_pair("nihao",2);
        cout<<p.first<<" "<<p.second<<endl;
        p=make_pair("sawadika",5);
        cout<<p.first<<" "<<p.second<<endl;
        return 0;
    }
    

    pair常见函数

    比较操作数>,=,<,>=,<=等等

    比较规则是先以first大小作为标准,只有在first相等的时候才判断second

    pair的常见用途

    1.替代二元结构体以及其构造函数,节省时间
    2.作为map中的键值对进行插入

    map<string,int> m;
    map.insert(make_pair("haha",1));
    map.insert(make_pair("nihao",2));
    for(map<string,int>::iterator it=m.begin();it!=m.begin();it++)
    {
        cout<<it->first<<" "<<it->second<<endl;
    }
    
  • 相关阅读:
    Python Module_openpyxl_styles 样式处理
    Python Module_openpyxl_styles 样式处理
    Microsoft Azure_Fabric
    Keepalived概述和安装(1)
    LVS集群TUN模式实例(5)
    LVS集群DR模式实例(4)
    LVS集群之NAT模式实例(3)
    LVS集群之工作原理和调度算法(2)
    HDFS基于路由的Federation方案
    HDFS基于路由的Federation方案
  • 原文地址:https://www.cnblogs.com/mengxiaoleng/p/11402794.html
Copyright © 2020-2023  润新知