Partager via


map::rend

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

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Valeur de retour

Un itérateur bidirectionnel inverse qui traite l'emplacement réussissant le dernier élément d'un mappage inversée (l'emplacement qui avait précédé du premier élément dans le mappage non inversée).

Notes

rend est utilisé avec une carte inversée comme fin est utilisé avec une carte.

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

rend peut être utilisé pour tester la valeur si un itérateur inverse a atteint la fin de sa carte.

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

Exemple

// map_rend.cpp
// compile with: /EHsc
#include <map>
#include <iostream>

int main( )
{
   using namespace std;
   map <int, int> m1;

   map <int, int> :: iterator m1_Iter;
   map <int, int> :: reverse_iterator m1_rIter;
   map <int, int> :: const_reverse_iterator m1_crIter;
   typedef pair <int, int> Int_Pair;

   m1.insert ( Int_Pair ( 1, 10 ) );
   m1.insert ( Int_Pair ( 2, 20 ) );
   m1.insert ( Int_Pair ( 3, 30 ) );

   m1_rIter = m1.rend( );
   m1_rIter--;
   cout << "The last element of the reversed map m1 is "
        << m1_rIter -> first << "." << endl;

   // begin can be used to start an iteration 
   // through a map in a forward order
   cout << "The map is: ";
   for ( m1_Iter = m1.begin( ) ; m1_Iter != m1.end( ); m1_Iter++)
      cout << m1_Iter -> first << " ";
      cout << "." << endl;

   // rbegin can be used to start an iteration 
   // through a map in a reverse order
   cout << "The reversed map is: ";
   for ( m1_rIter = m1.rbegin( ) ; m1_rIter != m1.rend( ); m1_rIter++)
      cout << m1_rIter -> first << " ";
      cout << "." << endl;

   // A map element can be erased by dereferencing to its key 
   m1_rIter = --m1.rend( );
   m1.erase ( m1_rIter -> first );

   m1_rIter = m1.rend( );
   m1_rIter--;
   cout << "After the erasure, the last element "
        << "in the reversed map is "
        << m1_rIter -> first << "." << endl;
}
  
  
  
  

Configuration requise

en-tête : <map>

l'espace de noms : DST

Voir aussi

Référence

map Class

Modèles Standard