Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
322 of 824 menu
◀ ▶

Функция rend

Функция rend возвращает обратный итератор, который указывает на элемент, предшествующий первому элементу контейнера. Иными словами, это обратный итератор на позицию перед началом контейнера, если рассматривать его в обычном порядке. Функция не принимает параметров и возвращает объект типа reverse_iterator (или const_reverse_iterator для константного контейнера). Чаще всего rend используется в паре с rbegin для обхода контейнера в обратном порядке.

Синтаксис

container.rend()

Пример

Давайте обойдём вектор в обратном порядке, используя rbegin и rend:

#include <iostream> #include <vector> using namespace std; int main() { vector<int> vec = {1, 2, 3, 4, 5}; for (auto it = vec.rbegin(); it != vec.rend(); ++it) { cout << *it << " "; } cout << endl; return 0; }

Результат выполнения кода:

5 4 3 2 1

Пример

Давайте убедимся, что rend указывает именно на позицию перед первым элементом, а не на сам первый элемент:

#include <iostream> #include <vector> using namespace std; int main() { vector<int> vec = {1, 2, 3, 4, 5}; auto it = vec.rend(); --it; cout << *it << endl; return 0; }

Результат выполнения кода:

1

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

  • функция rbegin,
    которая возвращает обратный итератор на последний элемент
  • функция begin,
    которая возвращает итератор на первый элемент
  • функция end,
    которая возвращает итератор на позицию после последнего элемента
  • класс reverse_iterator,
    который представляет обратный итератор
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить