std::inplace_vector<T,N>::rbegin, std::inplace_vector<T,N>::crbegin
constexpr reverse_iterator rbegin() noexcept; | (1) | (начиная с C++26) |
constexpr const_reverse_iterator rbegin() const noexcept; | (2) | (начиная с C++26) |
constexpr const_reverse_iterator crbegin() const noexcept; | (3) | (начиная с C++26) |
Возвращает обратный итератор на первый элемент развернутого inplace_vector. Он соответствует последнему элементу неразвернутого inplace_vector. Если inplace_vector пуст, возвращаемый итератор равен rend().
Возвращаемое значение
Обратный итератор на первый элемент.
Сложность
Постоянная.
Примечания
Базовый итератор возвращаемого обратного итератора — это конечный итератор. Следовательно, возвращаемый итератор становится недействительным, если и когда становится недействительным конечный итератор.
Пример
#include <algorithm>
#include <iostream>
#include <string>
#include <string_view>
#include <inplace_vector>
void print(const std::string_view s) { std::cout << s << ' '; }
int main()
{
const std::inplace_vector<std::string_view, 8> data
{
"▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"
};
std::inplace_vector<std::string, 8> arr(8);
std::copy(data.cbegin(), data.cend(), arr.begin());
print("Print 'arr' in direct order using [cbegin, cend):\t");
std::for_each(arr.cbegin(), arr.cend(), print);
print("\n\nPrint 'arr' in reverse order using [crbegin, crend):\t");
std::for_each(arr.crbegin(), arr.crend(), print);
}
Вывод:
Print 'arr' in direct order using [cbegin, cend): ▁ ▂ ▃ ▄ ▅ ▆ ▇ █ Print 'arr' in reverse order using [crbegin, crend): █ ▇ ▆ ▅ ▄ ▃ ▂ ▁
См. также
| возвращает обратный итератор на конец (открытая функция-член) |
|
|
(C++14) | возвращает обратный итератор на начало контейнера или массива (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/inplace_vector/rbegin