优化网站建设哪家专业最新新闻事件今天
本文主要介绍 C++ 编程语言的 STL(Standard Template Library) 中 unordered_map 的相关知识,同时通过示例代码介绍 unordered_map 的常见用法。
1 概述
C++标准库提供了四个无序关联容器(unordered associated container),这些容器不是使用比较运算符、而是使用一个哈希函数(hash function)和关键字类型的==运算符来组织元素。
在关键字类型的元素没有明显的“序关系”的情况下,无序容器是非常有用的。在某些应用中,维护元素的序的代价非常高昂,此时无序容器也很有用。
unordered_map 就是 C++标准库提供的四个无序关联容器之一。
2 常见用法
2.1 构造unordered_map
通常可以采用下面的方式构造 unordered_map(以 key 和 value 均为 char 类型为例):
unordered_map<char, char> unoMap;
2.2 添加/更新元素
可以通过 [] 运算符来执行添加/更新元素操作,示例代码如下:
unoMap['a'] = 'b';
说明:如果 key 对应的 value 存在,则执行更新元素操作,否则执行添加元素操作。
2.3 查找元素
可以通过 [] 运算符来执行查询元素操作,示例代码如下:
char chValue = unoMap['a'];