首页 > 其他分享 >STL容器:map

STL容器:map

时间:2023-03-19 10:23:32浏览次数:28  
标签:map iterator 迭代 容器 STL 元素 mapPerson 键值

1.基本用法:

  • #include<map> 需要头文件。

  • map<key_value,int>mp 创建一个以 key_value 类型为数组下标,存储32位整数类型的 map

  • map[value] 数组操作,可以直接修改或查询元素。

2.需要用的iterator的操作

  1. 前向迭代器遍历:
map <int,int>::iterator it;
map <int,int>::iterator itEnd;
it = mapPerson.begin();//指向头元素
itEnd = mapPerson.end();//指向头元素后面的元素
while (it != itEnd) {
    cout<<it->first<<' '<<it->second<<endl;  
    it++;
}
  1. find函数(括号内填的是键值

该方法与直接使用数组的区别是可以返回迭代器。

map<int,int>mapPerson;
map<int,int>::iterator it;
it=mapPerson.find(114514);
if(it==mapPerson.end()){
    cout<<"No such member";
}else{
    cout<<it->second;
}
  1. 删除元素
map<int,int>mapPerson;
erase(it)//删除迭代器为it的元素
erase(it1,it2)//删除迭代器it1和it2之间的元素
erase(key_value)//删除键值为key_value的元素
clear()//清空

3.其他操作

  • .empty() 是否为空

  • .count() 指定元素出现次数

  • .lower_bound() 向上查找大于等于给定键值的元素迭代器

  • .upper_bound() 向上查找严格大于给定键值的元素迭代器

标签:map,iterator,迭代,容器,STL,元素,mapPerson,键值
From: https://www.cnblogs.com/mornhus-xsylf-123/p/17232545.html

相关文章

  • Whistle - 使用过程中遇到的问题记录
    1.过滤请求:怎么实现根据请求实体中某个参数的值,过滤该请求?比如请求路由为/go,请求方法为post,每次请求go的时候,我想过滤掉(不显示)body中space=home的请求。......
  • Oracle多租户容器数据库的安装和使用
    转自 https://www.cnblogs.com/muhai/p/16628054.htmloracle多租户容器数据库:OracleMultitenantContainerDatabase(CDB)一、多租户架构oracle体系结构链接:https://......
  • PentestLab-web安全SQL注入-EXP6
    我们打开靶机,选择“SQL Injections”选择“Example6”观察页面我们使用工具测试参数为-u"http://192.168.29.148/sqli/example6.php?id=2"--dumpall开始测试没有发现我......
  • TreeMap
    TreeMap是有序map,通过key进行排序1.TreeMap是如何实现去重和排序的?TreeMap实现了SortedMap接口,它是一个key有序的Map类。TreeMap的默认排序规则:根据key元素的compareTo......
  • ACP云原生容器工程师 - 应用案例
    集群规划构建容器部署中的ECS选型在创建Kubernetes实例时,物理部署实体的选型对上层应用的性能起着非常大的影响。通过大型客户在云容器部署实践的统计,很大一部分应用在......
  • c++常用STL库及常用函数
    临近各种算法比赛,相信很多人想笔者一样还总是记不住很多函数的用法,特此总结一下常用的STL标准库以及标准函数,希望能够有所帮助。1.输入输出输入输出一般用两个标准库:#i......
  • 谈谈ConcurrentHashMap是如何保证线程安全的?
    jdk1.7中是采用Segment+HashEntry+ReentrantLock的方式进行实现的,而1.8中放弃了Segment臃肿的设计,取而代之的是采用Node+CAS+Synchronized来保证并发安全进行实现......
  • C++ STL 容器的size_type
    在C++STL容器中,size_type是一个无符号整数类型,用于表示容器中元素的数量或大小。由于不同平台和编译器有不同的实现,因此使用size_type可以确保代码的可移植性和兼容......
  • 如何实现一个IOC容器
    1、先准备一个基本的容器对象,包含一些map结构的集合,用来方便后续过程中存储具体的对象2、进行配置文件的读取工作或者注解的解析工作,将需要创建的bean对象都封装成BeanDefi......
  • 如何实现一个IOC容器
    1、先准备一个基本的容器对象,包含一些map结构的集合,用来方便后续过程中存储具体的对象2、进行配置文件的读取工作或者注解的解析工作,将需要创建的bean对象都封装成BeanDefi......