STL::unordered_map/unordered_multimap
unordered_map: 和 unorder_set 相似,该容器内部同样根据 hash value 把键值对存放到相应的 bucket(slot)中,根据单个 key 来访问 value 的速度很快。
unordered_multimap: 操作和 unorder_map 相同,不同点是 key 可以重复。通过 it.first(it->first) 访问 key 或者 it.second(it->second) 访问 mapped value。
Iterators(只有有序的容器才有 rbegin,rend 等迭代器)
begin:
end:
cbegin:
cend:
Capacity
empty:
size:
max_size:
Element access
operator [ ]:
at:
Element lookup
find:
count:
equal_range:
Modifiers
emplace:
emplace_hint:
insert:
erase: 三种方式 by position; by key; range;
clear:
swap:
Buckets
bucket_count:
max_bucket_count:
bucket_size:
bucket: 查询该 key 所在的 槽号。
Hash policy(同 unordered_set)
load_factor:
max_load_factor:
rehash:
reserve:
Observers
hash_function: 是 hasher 类型,获取当前的哈希函数。
key_eq:
STL::unordered_map/unordered_multimap的更多相关文章
- STL: unordered_map 自定义键值使用
使用Windows下 RECT 类型做unordered_map 键值 1. Hash 函数 计算自定义类型的hash值. struct hash_RECT { size_t operator()(c ...
- C++ STL unordered_map
容器unordered_map<key type,value tyep>m; 迭代器unordered_map<key type,value tyep>::iterator i ...
- STL——map/unordered_map基础用法
map /multimap map是STL里重要容器之一. 它的特性总结来讲就是:所有元素都会根据元素的键值key自动排序(也可根据自定义的仿函数进行自定义排序),其中的每个元素都是<key, ...
- unordered_map/unordered_set & unordered_multimap/unordered_multiset非关联容器
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
- STL容器与配接器
STL容器包括顺序容器.关联容器.无序关联容器 STL配接器包括容器配接器.函数配接器 顺序容器: vector 行为类似于数组,但可以根据要求 ...
- [翻译] C++ STL容器参考手册 (总册)
1. 写在最前面 这将是博主的第一篇技术博客,思考再三决定从翻译开始.这将是一个系列的博客,由不同的章节组成,章节之间由超链接联系,开发过程将使用增量式开发,每次完成一个章节.本篇是本系列的总册,提供 ...
- STL容器读书笔记
vector vector维护的是一个连续线性空间 vector是动态空间,随着元素的加入会自动扩容,扩充至当前size的两倍,然后将原内容拷贝,开始在原内容之后构造新元素,并释放空间 vector提 ...
- [CPP] STL 简介
STL 即标准模板库(Standard Template Library),是 C++ 标准库的一部分,里面包含了一些模板化的通用的数据结构和算法.STL 基于模版的实现,因此能够支持自定义的数据结构 ...
- 非关联容器|hash|unordered_map/multimap,unordered_set/multiset
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
随机推荐
- Apache-Axis小结
以前用过axis, 不过好久不弄, 有忘记了.很多很多东西放在收藏夹里面, 但是长时间不去看,结果就是还是不熟悉!现在再简单总结一下吧. Axis开发服务器端webservice其实很简单. 1 下载 ...
- 查SQLserver性能瓶颈
https://www.cnblogs.com/wayne-ivan/p/3821750.html
- centos7.5安装golang
1.下载 [root@localhost bin]#wget https://dl.google.com/go/go1.10.2.linux-amd64.tar.gz [root@localhost ...
- element(vue.js)+django 整合
近期开始接触Python,从web开发入门.尝试Django与vue整合,大概分3个阶段: 1.基于Django开发web后端 2.基于element开发好前端 3.前后端整合 参考:https:// ...
- mysql root密码修改
1.假如之前没设置密码,现在想成test mysqladmin -u root password test 2.假如之前密码是1234,现在想改成test mysqladmin -u root -p1 ...
- python day10 数据库(mysql基础)
一.数据库的概念 数据:事物的特征 数据库的本质是:通过套接字进行通信,来读存数据的一种软件,由于每次开发人员写程序都得写数据的套接字,所以诞生了数据库这个软件,减少重复劳动.(sql语句通用) 数据 ...
- crontab使用说明及例子程序
http://blog.csdn.net/yygydjkthh/article/details/7845639 http://walkerqt.blog.51cto.com/1310630/16901 ...
- VB-创建类模块DLL文件
最近需要调用MSCOMM32.OCX控件,但是ABAP调用过程中发现无法同时发送多条记录,则需调整实现方式: a.创建DLL文件封装MSCOMM控件相关属性及方法 b.系统注册DLL文件 c.ABAP ...
- Socket buffer 调优相关
http://www.man7.org/linux/man-pages/man7/tcp.7.html The maximum sizes for socket buffers declared vi ...
- curator 实现分布式一致性锁
最近准备在项目中引入分布式锁,故而研究基于zookeeper的curator框架. 网上资料不多,自己研究其源码发现,这个框架已经帮我做了很多现成的实现. 下面介绍下锁的实现: 通过源码中Lockin ...