Namespaces
Variants

std::basic_string<CharT,Traits,Allocator>:: rend, std::basic_string<CharT,Traits,Allocator>:: crend

From cppreference.net
std::basic_string
reverse_iterator rend ( ) ;
(1) (noexcept начиная с C++11)
(constexpr начиная с C++20)
const_reverse_iterator rend ( ) const ;
(2) (noexcept начиная с C++11)
(constexpr начиная с C++20)
const_reverse_iterator crend ( ) const noexcept ;
(3) (начиная с C++11)
(constexpr начиная с C++20)

Возвращает обратный итератор на символ, следующий за последним символом обращённой строки. Он соответствует символу, предшествующему первому символу необращённой строки. Этот символ служит заполнителем, попытка доступа к нему приводит к неопределённому поведению.

range-rbegin-rend.svg

Содержание

Параметры

(нет)

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

Обратный итератор на символ, следующий за последним символом.

Сложность

Константа.

Примечания

libc++ обратно портирует crend() в режим C++98.

Пример

#include <algorithm>
#include <iostream>
#include <iterator>
#include <string>
int main()
{
    std::string p("[A man, a plan, a canal: Panama]");
    std::string q;
    std::copy(p.crbegin(), p.crend(), std::back_inserter(q));
    std::cout << "q = " << q << '\n';
    std::copy(q.crbegin(), q.crend(), p.rbegin());
    std::cout << "p = " << p << '\n';
}

Вывод:

q = ]amanaP :lanac a ,nalp a ,nam A[
p = ]amanaP :lanac a ,nalp a ,nam A[

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

возвращает обратный итератор на начало
(публичная функция-член)
возвращает обратный итератор на конец
(публичная функция-член std::basic_string_view<CharT,Traits> )