目录

  • 一、学习的知识点
    • 关联容器
      • map
  • 二、上课没有听懂或者没有理解的地方
  • 三、当天学习的收获
  • 四、作业的思路、不会的地方
  • 五、其他需要反馈的问题

一、学习的知识点

关联容器

通过保存在数据项中的索引项,尽可能快的检索数据项
STL标准库包含的有序关联容器:

  1. set multiset:数据项就是索引项 ,multiset允许出现重复的项
  2. map, multimap:数据项是由索引项和其他某种类型的数据组成的一对数据。 multimap允许出现重复的索引项。

map

  1. map<key,datatype>: map的key和datatype一一对应
  2. 访问方式:1 [ ] 2 insert 3 map::find,返回迭代器指针访问
  3. 通过[ key] :先查询是否有相同的key,有则修改数据,没有则创建
  4. 通过find(key) 返回与key对应条目的迭代器指针
  5. 通过insert(),不存在这个key,则插入,否则不插入
  6. map::count(key),返回关键字为key的条目的数目,因为map的key值不重复,所以有key返回1,无key返回0
  7. map的迭代器包括两个数据:iterator->first 代表关键字, iterator->second 代表存储的数据
#include<map>
int main()
{//key和value一一对应//map<key,value> map<int,Cstaff> staffmap;//查找key为1001的map,如果存在则修改数据,不存在则插入staffmap[1001]=CStaff(1001,"admin","123456",1);cout<<staffmap.size()<<endl;//insert 如果key已经存在,那么不会进行插入staffmap.insert(make_pair(1002,Cstaff(1002,"manager","123456",2)));//插入cout<<staffmap[1002].getID()<<endl;it=staffmap.find(1003); //find返回迭代器指针cout<<(*it).first<<endl; //通过keycout<<(*it).second.getName()<<endl;//count函数cout<<staffmap.count(1002)<<endl;//迭代器访问for(it=staffmap.begin();it!=staffmap.end();++it){cout<<it->first<<"\t"<<endl;//}staffmap.erase(1004);//删除return 0;
}

二、上课没有听懂或者没有理解的地方

三、当天学习的收获

使用关联容器降低了检索的复杂度,讲解作业中学到了更多的操作

四、作业的思路、不会的地方

未开始

五、其他需要反馈的问题

200922阶段一C++关联容器map相关推荐

  1. C++|STL学习笔记-对STL中关联容器map的进一步认识

    关联容器map key + value 的值 关联容器 = 有序容器(红黑树) + 无序容器(散列表) + hash_map 有序容器中: map的键值是不允许重复的 multimap的键值是允许重复 ...

  2. C++知识点30——使用C++标准库(关联容器map及其初始化,赋值,查找,添加,删除与迭代器失效)

    一.关联容器简介 关于顺序容器和关联容器的区别已经在博客https://blog.csdn.net/Master_Cui/article/details/107427911中提过 C++标准库中的关联 ...

  3. 关联容器——map、set

    map类型通常被称为关联数组,与正常数组类似,不同之处在于其下标不必是整数.我们通过一个关键字而不是位置来查找值(键值对). 与之相对,set就是关键字的简单集合.当只是想知道一个值是否存在时,set ...

  4. C++ 11 特性:关联容器map、set的使用

    参考文献<C++ Primer> 一.关联容器概述 1.1 关联容器的概念 关联容器支持高效的查找与访问,主要的关联容器为map与set这两个.其中map主要提供的是键-值的操作,比如字典 ...

  5. 算法训练营 训练 硬木种类、双重队列、水果(关联容器map)

    关联容器:map map的键和值可以是不同的类型,键是唯一的,每个键都对应一个值.map可被当做希哈表使用,它建立了从键(关键字)到值的映射.map是键和值的一一映射,使用时需要引入头文件#inclu ...

  6. 【c++入门(2)】关联容器map

    一.map简介 map是一个关键字-值(key - value)的集合,就是可以通过key而找到value的一种关联数组.我们称这样的数据结构为:从key到value的映射,把key映射成value. ...

  7. 理解关联容器“map”的关键点

    map有一个构造函数: map<k, v> m(b, e); <C++ Primer>解释为:"创建 map 类型的对象 m, 存储迭代器 b 和 e 标记的范围内所 ...

  8. 《Essential C++》笔记之关联容器map的使用总结

       map被定义为一对(pair)数值,其中的key通常是个字符串,扮演索引的角色,另一个数值是value. 字典便是map的一个不错实例.如果要编写一个能对文章内每个字眼的出现次数加以分析的程序, ...

  9. C++知识点32——使用C++标准库(关联容器set和multiset的初始化,赋值,查找,添加,删除与迭代器失效)

    关联容器map和multimap已经在博客https://blog.csdn.net/Master_Cui/article/details/108690877和https://blog.csdn.ne ...

最新文章

  1. nemanja AJAX,通过AJAX发送空值 - ASP.NET MVC
  2. 【 FPGA/IC 】谈谈复位
  3. Quartz.Net分布式任务管理平台
  4. html里面怎么ul加高度,div里面嵌套了ul,为什么div的高度小于ul高度
  5. 修而未复:说说WebLogic那修不完的Java反序列化漏洞
  6. 解决IE8不支持数组的indexOf方法
  7. 支付宝架构师的总结:为什么他们能抗住万亿级流量的高并发?
  8. 财经职业技能测试的软件,2020技能 2.财经管理类 职业技能测试考试大纲(试行)...
  9. 王者荣耀空白代码_在线空白昵称代码复制
  10. python tkinter 输入数字 小数_Python Tkinter教程 数字猜谜游戏
  11. 【学习笔记】文献检索课程总结
  12. Windows设置redis开启自动启动
  13. 用计算机找到自己的另一半,生辰八字算婚期计算器 免费算个人感情婚姻的另一半...
  14. 聚焦新能源与汽车科技 全球汽车发展趋势论坛举办
  15. 解决Outlook搜索功能的搜索结果不完整问题
  16. WIN7去掉快捷方式小箭头
  17. 超低频测试信号产生电路软件流程图,超低频任意波形信号发生器方案设计书.doc...
  18. JAVA公益捐赠管理系统_公益组织捐赠系统的设计与实现
  19. scratch编程打字机
  20. java定义一个eat方法_小黄鸭系列java基础知识 | java中的方法

热门文章

  1. Airbnb: React Native 从选择到放弃
  2. 企业大数据应用成熟度如何?大多数企业处于自嗨中
  3. Junit中测试插入等无返回值的操作要注意的问题
  4. lvs主从服务器转发风暴(广播风暴、大流量)
  5. java springboot+maven发送邮件
  6. python函数与函数式编程
  7. guava Lists.transform 踩过的坑
  8. C++求二叉树的最大高度差
  9. 安卓自定义Listener
  10. Jira Concept- Issues