C++——map详解
本次博客,我将记录C++中map的用法
一些定义:
map是STL的一个关联容器,它提供一对一的hash
map是一种键-值对(key-value)集合,map集合中的每一个元素都包含一个键对象和一个值对象
map以模板(泛型)方式实现,可以存储任意类型的数据,包括使用者自定义的数据类型。map主要用于资料一对一映射(one-to-one)的情況,map內部的实现自建一颗红黑树,这颗树具有对数据自动排序的功能。在map内部所有的数据都是有序的
头文件:#include <map>
命名空间:using namespace std;
map的创建和初始化:
//创建map
map<int,int> maps1;
//创建并初始化
map<int,int> maps2{{1,2},{3,4}};
//map的拷贝
map<int,int> maps3(maps2);
插入元素:
//插入元素
map<int,string> map4;
//用insert函数插入pair
map4.insert(pair<int,string>(1,"HelloWorld"));
//用insert函数插入value_type数据
map4.insert(map<int,string>::value_type(2,"MakeMap"));
//以数组的方式插入map
map4[10]="hello";
map4[120]="world";
注意:
value_type是pair<const K,V>类型的同义词,K为键类型,V为键所关联的值的类型
map对象中一个给定键只对应一个元素。如果试图插入的元素所对应的键已经在容器中,则insert 将不做任何操作。
map中的常用函数:
//返回指向map头部的迭代器
begin()
//返回指向map末尾的迭代器
end()
//删除所有元素
clear()
//查看指定元素是否出现,0-未出现,1-出现
count()
//检查map是否为空,为空返回true,否则false
empty()
//返回map中键值对的个数
size()
//返回map所能容纳键值对的最大个数,不同操作系统返回值不同
max_size()
//插入键值对
insert()
//查找一个元素
find()
//删除map中指定位置的键值对
erase()
//交换两个键值对类型系统的map中存储的键值对
swap()
本文完
作者:Sky6634
出处:https://www.cnblogs.com/Sky6634/p/16502819.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通