本文整理汇总了C++中MultiMap::equal_range方法的典型用法代码示例。如果您正苦于以下问题:C++ MultiMap::equal_range方法的具体用法?C++ MultiMap::equal_range怎么用?C++ MultiMap::equal_range使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MultiMap
的用法示例。
在下文中一共展示了MultiMap::equal_range方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PrintEqualProduct
void PrintEqualProduct(int num) {
typedef unordered_multimap<int, pair<int, int> > MultiMap;
typedef unordered_map<int, int> ProductMap;
MultiMap resultMap;
ProductMap productMap;
for (int i = 1; i <= num; ++i) {
for (int j = 1; j <= num; ++j) {
resultMap.insert( MultiMap::value_type(i*j, pair<int,int>(i, j)) );
productMap.insert( pair<int,int>(i*j,i*j) );
}
}
pair<MultiMap::const_iterator, MultiMap::const_iterator> eqRange;
MultiMap::const_iterator it1;
MultiMap::const_iterator it2;
ProductMap::const_iterator it;
for (it = productMap.begin(); it != productMap.end(); ++it) {
eqRange = resultMap.equal_range(it->second); //search value i*j in resultMap first element, return a range pairs
for (it1 = eqRange.first; it1 != eqRange.second; ++it1) {
for (it2 = eqRange.first; it2 != eqRange.second; ++it2) {
cout<< it1->second.first <<" * "<<it1->second.second<<" = "<< it2->second.first <<" * "<<it2->second.second <<endl;
}
}
}
}