c++ multimap equal_range 未找到任何内容
我怎么知道 equal_range 没有找到任何匹配的情况?
比如:
multimap<string,string> mapdic;
pair<multimap<string,string>::iterator,multimap<string,string>::iterator> ret;
// insert some string pairs
ret=mapdic.equal_range(thisUpperCaseName);
if (???)//how to test equal_range find nothing?
{
}else{
}
有人可以帮忙吗?
谢谢
How can I know the equal_range didn't find any match cases?
like:
multimap<string,string> mapdic;
pair<multimap<string,string>::iterator,multimap<string,string>::iterator> ret;
// insert some string pairs
ret=mapdic.equal_range(thisUpperCaseName);
if (???)//how to test equal_range find nothing?
{
}else{
}
Anyone can help?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
:)
假设您的 equal_range 返回 pair 类型的结果
如果您的
result.first == result.second
那么就意味着什么都没有。如果只有一个元素,则
result.first != result.second
:)
say your equal_range returns result of type pair
If your
result.first == result.second
then it means there is nothing.If there is even a single element then
result.first != result.second
添加了一个示例来展示 4 种不同情况的
equal_range
返回值以及如何使用下界值和上界值来查找所需键是否存在。Added an example to show 4 different cases of
equal_range
return values and how the lower and upper bound values are used to find the existence of the required key.