Partager via


hash_multiset::rend

Notes

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

Retourne un itérateur const localise l'emplacement relavant le dernier élément d'un hash multiset.

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Valeur de retour

Un itérateur bidirectionnel inverse qui gère l'emplacement succédant au dernier élément d'un hash_multiset inversé (emplacement qui avait précédé le premier élément du hash_multiset non inversé).

Notes

rend est utilisé avec un hash_multiset inversé exactement comme end est utilisé avec un hash_multiset.

Si la valeur de retour de rend est assignée à const_reverse_iterator, il est alors impossible de modifier l'objet hash_multiset. Si la valeur de retour de rend est assignée à reverse_iterator, il est alors possible de modifier l'objet hash_multiset. La valeur retournée par rend ne doit pas être déréférencée.

Il est possible d'utiliser rend pour tester si un itérateur inverse a atteint la fin de son hash_multiset.

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_multiset_rend.cpp
// compile with: /EHsc
#include <hash_set>
#include <iostream>

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_multiset <int> hms1;
   hash_multiset <int>::iterator hms1_Iter;
   hash_multiset <int>::reverse_iterator hms1_rIter;
   hash_multiset <int>::const_reverse_iterator hms1_crIter;

   hms1.insert( 10 );
   hms1.insert( 20 );
   hms1.insert( 30 );

   hms1_rIter = hms1.rend( );
   hms1_rIter--;
   cout << "The last element in the reversed hash_multiset is "
        << *hms1_rIter << "." << endl;

   // end can be used to terminate an iteration 
   // through a hash_multiset in a forward order
   cout << "The hash_multiset is: ";
   for ( hms1_Iter = hms1.begin( ) ; hms1_Iter != hms1.end( );
         hms1_Iter++ )
      cout << *hms1_Iter << " ";
   cout << "." << endl;

   // rend can be used to terminate an iteration 
   // throught a hash_multiset in a reverse order
   cout << "The reversed hash_multiset is: ";
   for ( hms1_rIter = hms1.rbegin( ) ; hms1_rIter != hms1.rend( );
         hms1_rIter++ )
      cout << *hms1_rIter << " ";
   cout << "." << endl;

   hms1_rIter = hms1.rend( );
   hms1_rIter--;
   hms1.erase ( *hms1_rIter );

   hms1_rIter = hms1.rend( );
   hms1_rIter--;
   cout << "After the erasure, the last element in the "
        << "reversed hash_multiset is " << *hms1_rIter << "."
        << endl;
}
  

Configuration requise

Header: <hash_set>

Espace de noms : stdext

Voir aussi

Référence

hash_multiset, classe

Bibliothèque STL (Standard Template Library)