📜  C++ STL-multimap.crend()函数(1)

📅  最后修改于: 2023-12-03 14:39:51.302000             🧑  作者: Mango

C++ STL-multimap.crend()函数

简介

multimap是一种关联式容器,按照键值自动排序。其crend()成员函数用于获取multimap的逆序迭代器的结尾,也就是最后一个元素的前一个位置。

函数定义

multimap::crend()是一个成员函数,返回multimap类型的逆序迭代器的结尾位置。函数定义如下:

reverse_iterator crend() const noexcept;
实例
#include <iostream>
#include <map>

using namespace std;

int main()
{
    multimap<int, char> m;

    m.insert(pair<int, char>(1, 'a'));
    m.insert(pair<int, char>(2, 'b'));
    m.insert(pair<int, char>(2, 'c'));
    m.insert(pair<int, char>(3, 'd'));
    m.insert(pair<int, char>(4, 'e'));

    cout << "multimap contains the following elements:" << endl;

    for (auto it = m.crbegin(); it != m.crend(); ++it) {
        cout << (*it).first << " => " << (*it).second << endl;
    }

    return 0;
}

该程序创建一个multimap实例m,向其中插入了5个键值对。然后使用逆序迭代器遍历multimap,打印出每一个键值对。

最终输出结果如下:

multimap contains the following elements:
4 => e
3 => d
2 => c
2 => b
1 => a

可以看到,输出结果是逆序的,因为使用的是逆序迭代器。而最后一个元素的前一个位置,也就是结尾位置,是1 => a