multimap::equal_range()是C++ STL中的内置函数,它返回对的迭代器。该对是指范围的边界,该范围包括容器中所有具有等于k的键的元素。如果与键K不匹配,则返回的范围的长度为0,两个迭代器均指向第一个元素,根据容器的内部比较对象(key_comp),第一个元素的键被认为在k之后。
用法:
iterator multimap_name.equal_range(key)
参数:此函数接受单个强制性参数键,该键指定要返回其容器范围内的元素。
返回值:该函数返回一个成对的迭代器。该对是指范围的边界,该范围包括容器中所有具有等于k的键的元素。如果与键K不匹配,则返回的范围的长度为0,两个迭代器均指向第一个元素,根据容器的内部比较对象(key_comp),该元素的键被认为位于k之后。
以下示例程序旨在说明上述方法:
// C++ program to illustrate the
// equal_range() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
// initialize container
multimap<int, int> mp;
// insert elements in random order
mp.insert({ 2, 30 });
mp.insert({ 1, 40 });
mp.insert({ 3, 60 });
mp.insert({ 1, 20 });
mp.insert({ 5, 50 });
// Stores the range of key 1
auto it = mp.equal_range(1);
cout << "The multimap elements of key 1 is : \n";
cout << "KEY\tELEMENT\n";
// Prints all the elements of key 1
for (auto itr = it.first; itr != it.second; ++itr) {
cout << itr->first
<< '\t' << itr->second << '\n';
}
return 0;
}
输出:
The multimap elements of key 1 is : KEY ELEMENT 1 40 1 20
相关用法
- C++ multimap::crbegin()、multimap::crend()用法及代码示例
- C++ multimap::cbegin()、multimap::cend()用法及代码示例
- C++ multimap::begin()、multimap::end()用法及代码示例
- C++ multimap maxsize()用法及代码示例
- C++ multimap insert()用法及代码示例
- C++ multimap rbegin用法及代码示例
- C++ multimap rend用法及代码示例
- C++ multimap key_comp()用法及代码示例
- C++ multimap key_comp用法及代码示例
- C++ multimap::erase()用法及代码示例
- C++ multimap find()用法及代码示例
- C++ multimap::emplace_hint()用法及代码示例
- C++ multimap::swap()用法及代码示例
- C++ multimap::operator=用法及代码示例
注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 multimap equal_range() in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。