我怎么知道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{
}
任何人都可以提供帮助吗?
由于
答案 0 :(得分:19)
:)
说你的equal_range返回pair
类型的结果如果您的result.first == result.second
则表示没有任何内容。
如果只有一个元素,那么result.first != result.second
if(ret.first == ret.second)
{
// empty range
}
else
{
//at least an element.
}
答案 1 :(得分:-1)
与Ajeet的答案基本相同:)
ret.first == mapdic.end()