vector::crend() & vector::crbegin() con ejemplo

Estas funciones devuelven iteradores útiles para acceder a elementos vectoriales en orden inverso (desde el final hasta el principio)

Usando vector::crend()

Es una función miembro pública que devuelve un const_reverse_iterator que apunta al elemento que precede al primer elemento. Valor de retorno

A const_reverse_iterator to the reverse 
end of the sequence.

Sintaxis:

const_reverse_iterator crend() const noexcept;

Complejidad del tiempo – constante O(1)

Usando vector::crbegin()

Devuelve un const_reverse_iterator que apunta al último elemento del contenedor (es decir, su comienzo inverso). Valor devuelto

A const_reverse_iterator to the reverse 
beginning of the sequence.

Sintaxis:

const_reverse_iterator crbegin() const noexcept;

CPP

// CPP program to illustrate working of crbegin()
// crend()
#include <iostream>
#include <vector>
using namespace std;
 
int main ()
{
  // initializing vector with values
  vector<int> vect = {10, 20, 30, 40, 50};
 
  // for loop with crbegin and crend
  for (auto i = vect.crbegin(); i != vect.crend(); i++)
    cout << ' ' << *i;  //printing results
  
  cout << '\n';
  return 0;
}

Producción:

50 40 30 20 10

Complejidad del tiempo – constante O(1)

Aplicaciones crend ​​: Devuelve un iterador inverso al elemento que sigue al último elemento del contenedor invertido. Corresponde al elemento que precede al primer elemento del contenedor no invertido. Este elemento actúa como un marcador de posición, intentar acceder a él da como resultado un comportamiento indefinido . crbegin: Devuelve un iterador inverso al primer elemento del contenedor invertido. Corresponde al último elemento del contenedor no invertido. Ambos se utilizan en operaciones deque , acceder o modificar simultáneamente diferentes elementos es seguro. También se garantiza que la construcción de copia o la asignación del iterador devuelto nunca generará una excepción.

Veamos las diferencias en forma tabular -:

  vector::credencia() vector::crbegin()
1. Se utiliza para devolver un const_reverse_iterator que apunta al elemento teórico que precede al primer elemento del contenedor. Se utiliza para devolver const_reverse_iterator al comienzo inverso
2.

Su sintaxis es -:

const_reverse_iterator crend();

Su sintaxis es -:

const_reverse_iterator crbegin();

3. No toma ningún parámetro. No toma ningún parámetro.
4. Su complejidad no cambia. Su complejidad no cambia.
5. Su validez de iterador no cambia. Su validez de iterador no cambia.

Publicación traducida automáticamente

Artículo escrito por nickhilrawat y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *