C++ STL模板库中multimap::equal_range()的用法

传送门 ==>> AutoSAR实战系列300讲「糖果Autosar」总目录

1 multimap::equal_range()介绍

multimap::equal_range()是 C++ STL 中的内置函数,它返回对的迭代器。该对的迭代器是指一个范围的边界,该范围包括容器中具有等效于 k 的键的所有元素。如果没有与键 K 匹配,则返回的范围长度为 0,两个迭代器都指向在 k 之后第一个元素,根据容器的内部比较对象 (key_comp),该元素的键被认为在 k 之后。

句法:  
iterator multimap_name.equal_range(key)
参数:此函数接受单个强制参数键,该键指定要返回容器中其范围的元素。 

返回值:该函数返回对的迭代器。该对是指一个范围的边界,该范围包括容器中具有
等效于 k 的键的所有元素。如果没有与键 K 匹配,则返回的范围长度为 0,两个
迭代器都指向在 k 之后第一个元素,根据容器的内部比较对象 (key_comp),该元
素的键被认为在 k 之后。

2 multimap::equal_range实例

下面的程序说明了上述方法:

// C++ program to illustrate the
// multimap::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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

糖果Autosar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值