← 模式

检查键是否存在

123456789101112#include <map> #include <string> int main() { std::map<std::string, int> m = {{"a", 1}, {"b", 2}, {"c", 3}}; if (m.count("b")) { // 我们知道 "b" 在 m 中 } }

此模式采用 CC0 公共领域贡献 许可。

需要 c++11 或更新版本。

意图

检查关联容器中是否存在某个特定的键。

描述

第 6 行,我们创建了一个 std::map 作为关联容器的示例,并用键值对初始化它。

第 8 行,我们使用成员函数 count 来计算键 "b"m 中出现的次数。如果 "b"m 中,count 将返回 1;否则将返回 0。

注意:在 C++14 中,如果容器的比较器是透明的并且支持无需转换的适当比较,那么不会创建被搜索键的实例。

贡献者

  • Joseph Mansfield
  • Marco Arena

最后更新

2017年12月9日

来源

在 GitHub 上 Fork 此模式

分享