一直都是使用 map进行数据管理比较多,但multimap使用比较少,那么怎么样进行关键字段的查找呢?请看下面的代码,与MAP查找存在不一样的方式:
#include <map>
#include <string>
using namespace std;
int main(int argc, _TCHAR* argv[])
{
multimap<long,string> l_test;
l_test.insert(make_pair(1,"1"));
l_test.insert(make_pair(1,"11"));
l_test.insert(make_pair(1,"111"));
l_test.insert(make_pair(2,"2"));
l_test.insert(make_pair(2,"22"));
l_test.insert(make_pair(3,"3"));
l_test.insert(make_pair(4,"4"));
l_test.insert(make_pair(4,"44"));
l_test.insert(make_pair(3,"33"));
std::pair<multimap<long,string>::iterator,multimap<long,string>::iterator> l_mpfind;
l_mpfind = l_test.equal_range(3);
int l_nNum = 0;
string l_strData;
multimap<long,string>::iterator l_tpos;
for(l_tpos=l_mpfind.first;l_tpos!=l_mpfind.second;l_tpos++)
{
l_nNum = l_tpos->first;
l_strData = l_tpos->second;
}
return 0;
}