Partager via


hash_map::rbegin

Notes

Cette API est obsolète.L'alternative est unordered_map, classe.

Retourne un itérateur qui traite le premier élément d'une hash_map inversée.

const_reverse_iterator rbegin( ) const; 
reverse_iterator rbegin( );

Valeur de retour

Un itérateur bidirectionnel inverse adressant le premier élément dans une hash_map inversée ou adressant ce qui avait été le dernier élément de la hash_map non inversée.

Notes

rbegin est utilisé avec un hash_map inversé comme begin est utilisé avec une hash_map.

Si la valeur de retour rbegin est affectée à un const_reverse_iterator, l'objet de hash_map ne peut pas être modifié. Si la valeur de retour de rbegin est assignée à un itérateur inversé, il est impossible de modifier l'objet du hash_map.

rbegin peut être utilisé pour itérer à reculons au sein d'une hash_map.

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

Exemple

// hash_map_rbegin.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.rbegin( );
   cout << "The first 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.rbegin( );
   hm1.erase ( hm1_rIter -> first );

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

Configuration requise

En-tête: <hash_map>

Espace de noms : stdext

Voir aussi

Référence

hash_map, classe

Bibliothèque STL (Standard Template Library)