• Map(关联式容器)


      map是一类关联式容器,自动建立Key - Value的对应 , key 和 Value可以是任意你需要的类型。下面介绍 map 中一些常用的函数;

    一、map 中的 begin 和 end 函数

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.begin() -> first;      // 输出第一个元素的键值

      m.begin() -> second ;    // 输出第一个元素的 value  

      m.end() -> first ;    // 输出最后一个元素的下一个元素的键值

      m.end() ->second ;  // 输出最后一个元素的下一个元素的value

    二、map 中的 rbegin 和 rend 函数

      和其他数据结构差不多,这个是从后往前输出的,返回的值要用变量来存储,变量应该这样定义:map<char,int>::reverse_iterator iter ;

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.rbegin() -> first ;   // 输出最后一个元素的键值

      m.rend() -> first ;    // 输出第一个前面一个元素的键值

    三、map 中的 empty 函数

      map<char , int> m ;

      m.empty() ;  //若 map 中的元素为空时,返回 true ,否则返回 false 

    四、map 中的 size 函数

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.size() ;    // 返回 map 中的数据元素个数

    五、map 中的 at 函数

      at 函数中的参数为键值,输出的是键值相对应的 value ;

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.at('a') ;  //  输出键值 a 对应的 value ,相当于 vector 中的 at 中放入下标

    六、map 中的 find 函数

      find 函数用来查找键值,返回键值所在的位置指针;

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.find('b') -> second ;  // 输出键值 b 对应的 value

    七、map 中的 insert 函数 

      和其他数据结构很相似,insert 函数有两个参数,第一个参数表示在什么地方插入,第二个参数表示插入什么

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.insert(m.begin() , pair<char,int>('a',50) ;    // 在容器之前插入一个元素('a' , 50) ;

      map<char , int> m1 ;

      m1.insert(m.begin() , m.end()) ;    // 将 m 中的数据全部复制给 m1 

      m1.insert(m.begin(),m.find('c')) ;    // 将 m 中的数据从第一个开始,一直复制到键值为 c 为止

    八、map 中的 erase 函数

      erase 函数 用来删除 map中的某个对象 , 参数为map对象的键值 ;

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.erase('a') ;  //将键值为 a 的这个对象给删除掉

      m.erase(m.find('a')) ;  效果和上面一样

      m.erase(m.find('a') , ++m.find('b')) ;  // 将键值为 a 和 b 的map对象删除

    九、map 中的 count 函数

      count 函数 顾名思义,用来统计相同键值出现的次数

      map<char , int> m ;

      m['a'] = 100 ;

      m['b'] = 200 ;

      m['c'] = 300 ;

      m.count('b') ;    // 输出键值 b 出现的次数

      

  • 相关阅读:
    Windows 下ftp命令基本使用
    Oracle学习笔记:oracle和serverver在过程sql中通过select对变量进行赋值的区别
    分享最新36款高质量免费英文字体
    分享31个漂亮的矢量背景素材
    30个使用大自然元素设计的 Logo 欣赏
    分享5款精美的WordPress免费主题
    分享最新40个很不错的 PSD 资源
    WordPress精美免费主题分享系列之杂志风格篇
    分享25个很棒的网页设计教程和资源网站
    分享50个 CSS3 最佳应用示例
  • 原文地址:https://www.cnblogs.com/scottding/p/3665896.html
Copyright © 2020-2023  润新知