栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++ Study Notes 10

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++ Study Notes 10

->
map
map中每个元素都是pair
pair第一个元素为key(键值),起索引作用,第二个元素为value(实值)
所有元素会根据元素的键值自动排序

本质:
    map/multimap属于关联式容器,底层结构是二叉树
优点:
    可以根据键值key快速找到value值
map和multimap区别:
    map不允许容器中有重复key的元素,insert插重复key的不会覆盖
    multimap允许

构造:
    map mp;      默认构造
    map(const map & mp);        拷贝构造
赋值:
    map & operator=(const map &mp);

->
map大小和交换操作
函数原型:
    size();        返回元素个数
    empty();    判空
    swap(st);   交换

map插入和删除
函数原型:
    insert(elem);
        几种insert方式:
        map m;
        m.insert(pair(1, 10));
        m.insert(make_pair(2, 20));
        m.insert(map::value_type(3, 30));
        m[4]=40;                      不建议用这种方式插入,因为当这个key不存在的时候,会自动创建出来
        中括号可以用来: 通过key访问value  m[key] 返回对应的value



    clear();
    erase(pos);         删除迭代器位置的元素,返回下一个元素的迭代器
    erase(beg,end);     删除区间[beg,end)的所有元素,返回下一个元素的迭代器
    erase(key);         删除容器中值为key的元素,只会按照key,如果没有不会改变

->
map查找和统计
函数原型:
    find(key);      查找key是否存在,返回该键的元素迭代器;若不存在,返回end()
    count(key);     统计key元素的个数,结果为 0或者 1


->
map排序,默认是按照key从小到大
技术:
    仿函数
和set一样,创建一个自定义的排序类,重载()





    
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/384729.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号