• STL——map


    map可以当做一个容器(装载具有一定格式的数据);pair可以理解为元素(放入到容器的的每个个体),pair并没有单独行动的典型用法,正常都是配合map来使用(即把pair这个元素插入到map这个容器里面)。 

         begin()         返回指向map头部的迭代器

         clear()        删除所有元素

         count()         返回指定元素出现的次数

         empty()         如果map为空则返回true

         end()           返回指向map末尾的迭代器

         equal_range()   返回特殊条目的迭代器对

         erase()         删除一个元素

         find()          查找一个元素

         get_allocator() 返回map的配置器

         insert()        插入元素

         key_comp()      返回比较元素key的函数

         lower_bound()   返回键值>=给定元素的第一个位置

         max_size()      返回可以容纳的最大元素个数

         rbegin()        返回一个指向map尾部的逆向迭代器

         rend()          返回一个指向map头部的逆向迭代器

         size()          返回map中元素的个数

         swap()           交换两个map

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        map<int,string> map1;
        map<string,int> map2;
        map<int,bool> map3;
        map<int,string>::iterator iter1;
        map<string,int>::iterator iter2;
        //map插入操作
        map1.insert(pair<int,string>(1,"one"));
        map1.insert(pair<int,string>(2,"two"));
        map1.insert(pair<int,string>(3,"three"));
        map2["a"] = 1;
        map2["aa"] = 2;
        map2["aaa"] = 3;
    
        //查看map的大小
        cout<<"map1的大小为"<<map1.size()<<endl;
    
        //map数据的遍历
        for(int i=1;i<=map1.size();i++){
            cout<<map1[i]<<" ";
        }
        cout<<endl;
        for(iter2 = map2.begin();iter2 != map2.end() ; iter2++){
            cout<<iter2->first<<" "<<iter2->second<<endl;
        }
    
        //map数据的查找(只能查找key值)
        iter1 = map1.find(2);
        if(iter1 != map1.end()){
            cout<<"find 2"<<endl;
        }
    
        //map数据删除 包括迭代器删除和成片删除和完全删除
        iter1 = map1.find(1);
        map1.erase(iter1);
        map1.erase(map1.begin(),map1.end());
        map1.clear();
        return 0;
    }
  • 相关阅读:
    Partial Class —— 转发
    HTTP Message Handlers in ASP.NET Web API & HttpClient Message Handlers in ASP.NET Web API (转发)
    egg.js sequelize 事务处理
    (sequelize)bulkCreate函数中的updateOnDuplicate参数使用
    Sequelize 关联查询数据合并字段
    Vue获取钉钉免登陆授权码
    Microsoft太小气了,Wallop的帐号竟然被取消了。
    plot_importance多分类、排序不匹配、图片数值不显示
    Markdown常用语法说明
    UIS8910的引脚复用
  • 原文地址:https://www.cnblogs.com/tonyyy/p/10353587.html
Copyright © 2020-2023  润新知