Partager via


deque::rend

Retourne un itérateur qui traite l'emplacement réussissant le dernier élément d'un deque inversé.

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Valeur de retour

Un itérateur d'accès aléatoire inverse qui traite l'emplacement réussissant le dernier élément d'un deque inversé (l'emplacement qui avait précédé le premier élément du deque non inversé).

Notes

rend est utilisé avec un deque inversé comme fin est utilisé avec un deque.

Si la valeur de retour d' rend est assignée à const_reverse_iterator, l'objet de deque ne peut pas être modifié.Si la valeur de retour d' rend est assignée à reverse_iterator, l'objet de deque peut être modifié.

rend peut être utilisé pour tester si un itérateur inverse a atteint la fin de son deque.

La valeur retournée par rend ne doit pas être déréférencée.

Exemple

// deque_rend.cpp
// compile with: /EHsc
#include <deque>
#include <iostream>

int main( ) 
{
   using namespace std;

   deque <int> c1;
   deque <int>::iterator c1_Iter;
   deque <int>::reverse_iterator c1_rIter;
   // If the following line had replaced the line above, an error
   // would have resulted in the line modifying an element
   // (commented below) because the iterator would have been const
   // deque <int>::const_reverse_iterator c1_rIter;
   
   c1.push_back( 10 );
   c1.push_back( 20 );
   c1.push_back( 30 );

   c1_rIter = c1.rend( );
   c1_rIter --; // Decrementing a reverse iterator moves it forward 
                // in the deque (to point to the first element here)
   cout << "The first element in the deque is: " << *c1_rIter << endl;

   cout << "The deque is: ";
   for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
      cout << *c1_Iter << " ";
   cout << endl;

   // rend can be used to test if an iteration is through all of 
   // the elements of a reversed deque
   cout << "The reversed deque is: ";
   for ( c1_rIter = c1.rbegin( ); c1_rIter != c1.rend( ); c1_rIter++ )
      cout << *c1_rIter << " ";
   cout << endl;

   c1_rIter = c1.rend( );
   c1_rIter--; // Decrementing the reverse iterator moves it backward 
               // in the reversed deque (to the last element here)
   *c1_rIter = 40; // This modification of the last element would 
                   // have caused an error if a const_reverse 
                   // iterator had been declared (as noted above)
   cout << "The modified reversed deque is: ";
   for ( c1_rIter = c1.rbegin( ); c1_rIter != c1.rend( ); c1_rIter++ )
      cout << *c1_rIter << " ";
   cout << endl;
}
  

Configuration requise

en-tête : <deque>

l'espace de noms : DST

Voir aussi

Référence

deque Class

deque::rbegin et deque::rend

Modèles Standard