std::multiset<Key,Compare,Allocator>:: rbegin, std::multiset<Key,Compare,Allocator>:: crbegin
|
reverse_iterator rbegin
(
)
;
|
(1) |
(noexcept начиная с C++11)
(constexpr начиная с C++26) |
|
const_reverse_iterator rbegin
(
)
const
;
|
(2) |
(noexcept начиная с C++11)
(constexpr начиная с C++26) |
|
const_reverse_iterator crbegin
(
)
const
noexcept
;
|
(3) |
(начиная с C++11)
(constexpr начиная с C++26) |
Возвращает обратный итератор на первый элемент обращенного * this . Он соответствует последнему элементу необращенного * this .
Если * this пуст, возвращаемый итератор равен rend() .
Содержание |
Возвращаемое значение
Обратный итератор на первый элемент.
Сложность
Константа.
Примечания
Поскольку как
iterator
, так и
const_iterator
являются константными итераторами (и могут фактически быть одним и тем же типом), невозможно изменять элементы контейнера через итератор, возвращаемый любым из этих методов-членов.
Базовый итератор возвращаемого обратного итератора является конечным итератором . Следовательно, возвращаемый итератор инвалидируется, если и когда конечный итератор инвалидируется.
libc++ переносит обратно
crbegin()
в режим C++98.
Пример
#include <iostream> #include <set> int main() { std::multiset<unsigned> rep{1, 2, 3, 4, 1, 2, 3, 4}; for (auto it = rep.crbegin(); it != rep.crend(); ++it) { for (auto n = *it; n > 0; --n) std::cout << "⏼" << ' '; std::cout << '\n'; } }
Вывод:
⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼ ⏼
Смотрите также
|
(C++11)
|
возвращает обратный итератор на конец
(публичная функция-член) |
|
(C++14)
|
возвращает обратный итератор на начало контейнера или массива
(шаблон функции) |