我正在尝试学习如何遍历从具有相同键的 boost::unordered_multimap 返回的值。所以,我这样做了,
boost::unordered_multimap<string, string> sample;
我可能在其中,
<"one", "1">,
<"one", "11">,
<"two", "2">,
<"three", "3">,
<"three", "3">,
<"three", "33">,
<"three", "333">,
我尝试获取与“两个”相对应的值,所以我这样做了,
std::pair<boost::unordered_multimap<string, string>::iterator, boost::unordered_multimap<string, string>::iterator> > ret = sample.equal_range("two");
我像这样迭代它,
for(boost::unordered_multimap<string, string>::iterator> it = ret.first ; it != ret.second; it++)
{
cout<<"The values mapped are : "<<*it->second<<"\n";
}
我会得到值:2,因为这是唯一映射的值?我会第一次跳出循环吗?我正在尝试在线/在 boost 文档中获得答案,但我没有成功。这可能是一个基本问题,但我正在努力学习。任何帮助,将不胜感激。
TIA
-R