STL学习之map与multimap
来源:互联网 发布:mac automator 自动化 编辑:程序博客网 时间:2024/05/16 18:46
map:
构造函数:
map<类型1,类型2>m;//默认
map<类型1,类型2>m(m2);//拷贝
map<类型1,类型2>m(first,last);//初始值为迭代器间的值
插入数据:
m=m2;//允许直接拷贝
m[key]=value;//简单
m.insert(make_pair(data1,data2));
m.insert(pair<类型1,类型2>(data1,data2));
m.insert(map<类型1,类型2>::value_type(data1,data2));
插入返回值为pari< iterator,bool> ,其中iterator指向插入位置,bool表示插入是否成功
访问元素:
m[key];
m.at[key];
iterator->second;
查找数据:
auto f=m.find(key);//如果查找到元素则返回相应的迭代器,否则返回end()
m.count(key);//返回值为0或1,1代表key值存在,无法获取位置
删除数据:
m.erase(iterator);//删除迭代器所指的值,如果指向不存在则异常
m.erase(key);//直接删除键值
m.erase(first,last);//删除迭代器间的数据
交换:
m.swap(m2);
swap(m,m2);
容量操作:
m.size();
m.max_size();
m.empty();
m.clear();//清除数据,数据清除后可以访问,但空直接增加空数据
map无法使用sort排序
multimap :
两者基本操作差不多,但multimap不支持数组访问,且可以添加重复key值
插入数据:
不能使用数组形式插入数据,只允许使用insert
访问元素:
只能使用 iterator->second;
无法使用数组
查找数据:
m.count(key);//返回值为键值为key的数量,无法获取位置
其他操作与map一致
- STL学习之map与multimap
- STL学习之map与multimap操作练习
- STL-------map与multimap
- STL 之map,multimap
- STL 之map,multimap
- STL之map&multimap
- STL之map/multimap
- STL 中的map与multimap
- stl库之map、multimap
- C++ STL之 map,multimap
- STL容器之map/multimap
- STL之映射map&multimap
- C++之STL(6)之 map 与 multimap 关联容器
- C++学习 STL之六:map/multimap用法详解
- STL之map/multimap关联式容器学习
- STL学习之十:map和multimap用法示例
- STL学习笔记-map/multimap容器
- STL学习(六)--map/multimap用法详解
- 校招笔试题-玩转南美馆
- 【Qt开发】关于Qt应用程序中的堆栈、静态存储区的使用错误
- 3327顺序表应用4:元素位置互换之逆置算法
- zk集群笔记
- 全国主要城市交通卡芯片一览
- STL学习之map与multimap
- Win10安装nodejs 错误代码2502,2503
- 数据库性能优化常用SQL脚本总结
- 条条大路通罗马 - 华为笔试题目
- [读书笔记] 深入探索C++对象模型-第五章-构造、析构、拷贝语义学(中)
- 用Docker之后还需要OpenStack吗?
- 开关电源纹波产生分析
- CSS Repaint and Reflow 及其优化
- 爬虫