Partager via


hash_map::rend

[!REMARQUE]

Cette API est obsolète.l'alternative est unordered_map Class.

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

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 hash_map inversé (l'emplacement qui avait précédé le premier élément du hash_map non inversé).

Notes

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

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

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

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

Dans Visual C++ .NET 2003, les membres des fichiers d'en-tête de <hash_map> et de <hash_set> ne sont plus dans l'espace de noms de DST, mais plutôt ont été déplacés dans l'espace de noms de stdext.Pour plus d'informations, consultez The stdext Namespace.

Exemple

// hash_map_rend.cpp
// compile with: /EHsc
#include <hash_map>
#include <iostream>

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_map <int, int> hm1;

   hash_map <int, int> :: iterator hm1_Iter;
   hash_map <int, int> :: reverse_iterator hm1_rIter;
   hash_map <int, int> :: const_reverse_iterator hm1_crIter;
   typedef pair <int, int> Int_Pair;

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

   hm1_rIter = hm1.rend( );
   hm1_rIter--;
   cout << "The last element of the reversed hash_map hm1 is "
        << hm1_rIter -> first << "." << endl;

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

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

   // A hash_map element can be erased by dereferencing to its key 
   hm1_rIter = --hm1.rend( );
   hm1.erase ( hm1_rIter -> first );

   hm1_rIter = hm1.rend( );
   hm1_rIter--;
   cout << "After the erasure, the last element "
        << "in the reversed hash_map is "
        << hm1_rIter -> first << "." << endl;
}
  
  
  
  

Configuration requise

en-tête : <hash_map>

Stdext del'espace de noms :

Voir aussi

Référence

hash_map Class

Modèles Standard