Namespaces
Variants

std::flat_multimap<Key,T,Compare,KeyContainer,MappedContainer>:: rbegin, std::flat_multimap<Key,T,Compare,KeyContainer,MappedContainer>:: crbegin

From cppreference.net

reverse_iterator rbegin ( ) noexcept ;
(1) (начиная с C++23)
(constexpr начиная с C++26)
const_reverse_iterator rbegin ( ) const noexcept ;
(2) (начиная с C++23)
(constexpr начиная с C++26)
const_reverse_iterator crbegin ( ) const noexcept ;
(3) (начиная с C++23)
(constexpr начиная с C++26)

Возвращает обратный итератор на первый элемент обращенного * this . Он соответствует последнему элементу необращенного * this .

Если * this пуст, возвращаемый итератор равен rend() .

range-rbegin-rend.svg

Содержание

Возвращаемое значение

Обратный итератор на первый элемент.

Сложность

Константа.

Примечания

Базовый итератор возвращаемого обратного итератора является конечным итератором . Следовательно, возвращаемый итератор становится недействительным, если и когда конечный итератор становится недействительным.

Пример

#include <algorithm>
#include <iostream>
#include <string>
#include <flat_map>
int main()
{
    std::flat_multimap<std::string, int> map
    {
        {"█", 1},
        {"▒", 5},
        {"░", 3},
        {"▓", 7},
        {"▓", 8},
        {"░", 4},
        {"▒", 6},
        {"█", 2}
    };
    std::cout << "Вывод в обратном порядке с использованием константных обратных итераторов:\n";
    std::for_each(map.crbegin(), map.crend(),
        [](std::pair<const std::string, int> const& e)
        {
            std::cout << "{ \"" << e.first << "\", " << e.second << " };\n";
        });
    map.rbegin()->second = 42; // OK: неконстантное значение можно изменять
//  map.crbegin()->second = 42; // Ошибка: нельзя изменять константное значение
}

Возможный вывод:

Вывод в обратном порядке с использованием константных обратных итераторов:
{ "▓", 8 };
{ "▓", 7 };
{ "▒", 6 };
{ "▒", 5 };
{ "░", 4 };
{ "░", 3 };
{ "█", 2 };
{ "█", 1 };

Смотрите также

возвращает обратный итератор на конец
(public member function)
возвращает обратный итератор на начало контейнера или массива
(function template)