gpt4 book ai didi

C++:尝试遍历 boost::unordered_map 时,operator< 不匹配

转载 作者:行者123 更新时间:2023-11-30 00:37:35 24 4
gpt4 key购买 nike

我有以下代码:

boost::unordered_map<std::string, int> map;
map["hello"]++;
map["world"]++;

for(boost::unordered_map<std::string, int>::iterator it = map.begin(); it < map.end(); it++){
cout << map[it->first];
}

当我尝试编译时出现以下错误但不知道为什么?

error: no match for ‘operator<’ in ‘it < map.boost::unordered::unordered_map<K, T, H, P, A>::end [with K = std::basic_string<char>, T = int, H = boost::hash<std::basic_string<char> >, P = std::equal_to<std::basic_string<char> >, A = std::allocator<std::pair<const std::basic_string<char>, int> >, boost::unordered::unordered_map<K, T, H, P, A>::iterator = boost::unordered::iterator_detail::iterator<boost::unordered::detail::ptr_node<std::pair<const std::basic_string<char>, int> >*, std::pair<const std::basic_string<char>, int> >]()

最佳答案

尝试:

it != map.end()

作为for循环终止条件(而不是 it < map.end() )。

关于C++:尝试遍历 boost::unordered_map<string,int> 时,operator< 不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13048960/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com