gpt4 book ai didi

c++ - 调用 end() 时出现 std::multimap 错误

转载 作者:行者123 更新时间:2023-11-27 23:23:58 25 4
gpt4 key购买 nike

如何检查 multimap 元素是否存在?
使用此代码:

typedef std::multimap<std::string, std::string> TagVal;
TagVal tv;
//... add values to tv ...
TagVal::const_iterator it = tv.find("abc");
if(it == TagVal::end()) // <--- ERROR
cerr << "Error";

我收到以下编译时错误:

error: cannot call member function 'std::multimap<...>::iterator std::multimap<...>::end() ... without object.

平台:Linux,GCC 4.5.1

最佳答案

原因是 end 不是静态方法,它必须在您从中获得迭代器的对象上调用:

if(it == tv.end())
cerr << "Error";

关于c++ - 调用 end() 时出现 std::multimap 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10718104/

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