c++ - 如何检查 std::map 是否包含满足谓词的键
问题描述
在 C++ 中,假设您有一个std::map<int,int>
- 您将如何使用stl
算法/库来查找是否存在key
满足某个谓词的 a,例如查找是否存在key
一个奇数。到目前为止,我有:
auto variable = std::find_if(my_map.begin(),my_map.end(), [](const auto& element) -> bool {return element%2 == 1;})
if (variable == my_map.end() .....
但是如何确保谓词函数中的参数实际上是关键?
解决方案
element.first
您可以像这样访问密钥
const auto variable = std::find_if(my_map.begin(), my_map.end(), [](const auto& element) {
return element.first % 2 == 1;
}
);
if (variable != my_map.end()
{
// found
}
推荐阅读
- c# - 使用xpath从xml获取子节点值
- react-native - 无法调用反应原生函数
- c# - 调用并发 Web api 请求时未找到存储过程
- php - 如何将php变量从一个div传递到同一页面中的另一个div而不是传递到另一个页面?
- php - 如果给出限制,PHP SoapClient 与类型不匹配
- javascript - 默认加载定向光
- javascript - Asynchronous Vs Synchronous Code In JavaScript
- azure - 在azure中获取登录用户组
- java - elasticsearch中的通配符搜索
- java - Check subscriber received message on MQTT Topic publish?