std::deque<T,Allocator>:: rbegin, std::deque<T,Allocator>:: crbegin
|
reverse_iterator rbegin
(
)
;
|
(1) |
(noexcept desde C++11)
(constexpr desde C++26) |
|
const_reverse_iterator rbegin
(
)
const
;
|
(2) |
(noexcept desde C++11)
(constexpr desde C++26) |
|
const_reverse_iterator crbegin
(
)
const
noexcept
;
|
(3) |
(desde C++11)
(constexpr desde C++26) |
Devuelve un iterador inverso al primer elemento del contenedor invertido * this . Corresponde al último elemento del contenedor no invertido * this .
Si * this está vacío, el iterador retornado es igual a rend() .
Contenidos |
Valor de retorno
Iterador inverso al primer elemento.
Complejidad
Constante.
Notas
El iterador subyacente del iterador inverso devuelto es el iterador final . Por lo tanto, el iterador devuelto se invalida si y cuando el iterador final se invalida.
libc++ retrocede
crbegin()
al modo C++98.
Ejemplo
#include <algorithm> #include <iostream> #include <numeric> #include <string> #include <deque> int main() { std::deque<int> nums{1, 2, 4, 8, 16}; std::deque<std::string> fruits{"orange", "apple", "raspberry"}; std::deque<char> empty; // Imprimir deque. std::for_each(nums.rbegin(), nums.rend(), [](const int n) { std::cout << n << ' '; }); std::cout << '\n'; // Suma todos los enteros en el deque nums (si los hay), imprimiendo solo el resultado. std::cout << "Suma de nums: " << std::accumulate(nums.rbegin(), nums.rend(), 0) << '\n'; // Imprime la primera fruta en el deque fruits, verificando si hay alguna. if (!fruits.empty()) std::cout << "Primera fruta: " << *fruits.rbegin() << '\n'; if (empty.rbegin() == empty.rend()) std::cout << "deque 'empty' está efectivamente vacío.\n"; }
Salida:
16 8 4 2 1 Suma de nums: 31 Primera fruta: raspberry deque 'empty' está efectivamente vacío.
Véase también
|
(C++11)
|
devuelve un iterador inverso al final
(función miembro pública) |
|
(C++14)
|
devuelve un iterador inverso al inicio de un contenedor o array
(plantilla de función) |