std::set<Key,Compare,Allocator>::rend, std::set<Key,Compare,Allocator>::crend
| (1) | ||
reverse_iterator rend(); |
(до C++11) | |
reverse_iterator rend() noexcept; |
(с C++11) | |
| (2) | ||
const_reverse_iterator rend() const; |
(до C++11) | |
const_reverse_iterator rend() const noexcept; |
(с C++11) | |
const_reverse_iterator crend() const noexcept; |
(3) | (с C++11) |
Возвращает обратный итератор на элемент, следующий за последним элементом обращенного set. Он соответствует элементу, предшествующему первому элементу необращенного set. Этот элемент используется как маркер, попытка доступа к нему приводит к неопределенному поведению.
Параметры
(нет)
Возвращаемое значение
Обратный итератор на элемент, следующий за последним элементом.
Сложность
Постоянная.
Примечания
Поскольку оба iterator и const_iterator являются константными итераторами (и, возможно, имеют один и тот же тип), изменить элементы контейнера с помощью итератора, возвращенного любой из этих функций-членов, невозможно.
Пример
#include <iostream>
#include <set>
int main()
{
std::set<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)
|
возвращает обратный итератор до конца контейнера или массива (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/container/set/rend