📅  最后修改于: 2023-12-03 14:39:52.535000             🧑  作者: Mango
在C++的STL库中,unordered_multiset是一个无序的容器,它可以存储多个相同的元素。equal_range()是unordered_multiset类中的一个成员函数,它用于查找与指定值相等的元素的范围。
unordered_multiset的equal_range()函数返回一个pair类型的值,其中包含两个迭代器,表示与指定值相等的元素的范围。第一个迭代器指向范围中的第一个元素,第二个迭代器指向范围中的最后一个元素的下一个位置。
unordered_multiset的equal_range()函数的语法如下:
pair<iterator, iterator> equal_range(const key_type& key);
下面是一个使用unordered_multiset的equal_range()函数的示例:
#include <iostream>
#include <unordered_set>
int main() {
std::unordered_multiset<int> mySet = {1, 2, 3, 2, 4, 5, 2};
// 使用equal_range()函数查找元素2的范围
auto range = mySet.equal_range(2);
// 输出范围内的元素
std::cout << "Elements with value 2 in the set: ";
for (auto it = range.first; it != range.second; ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
return 0;
}
输出结果为:
Elements with value 2 in the set: 2 2 2