Udostępnij za pośrednictwem


hash_multimap::upper_bound

[!UWAGA]

Ten interfejs API jest nieaktualny.Alternatywą jest unordered_multimap — Klasa.

Zwraca iterację do pierwszego elementu w hash_multimap za pomocą klucza, która jest większa niż określonym kluczem.

iterator upper_bound( 
   const Key& _Key 
); 
const_iterator upper_bound( 
   const Key& _Key 
) const;

Parametry

  • _Key
    Klucz argument ma być porównywana z kluczem sortowania elementu z hash_multimap są przeszukiwane.

Wartość zwracana

Sterująca lub const_iterator położenie elementu w hash_multimap że adresów przy użyciu klucza, który jest większa niż klucz argument lub że odnosi się do lokalizacji sukces ostatniego elementu w hash_multimap, jeśli nie znaleziono klucza.

Jeśli wartość zwracaną przez upper_bound jest przypisany do const_iterator, nie można zmodyfikować obiektu hash_multimap.Jeśli wartość zwracaną przez upper_bound jest przypisany do sterująca, hash_multimap obiektu mogą być modyfikowane.

Uwagi

W Visual C++ .NET 2003, elementy członkowskie plików nagłówka <hash_map> i <hash_set> nie są już w przestrzeni nazw std, ale raczej zostały przeniesione do przestrzeni nazw stdext.Zobacz Przestrzeń nazw stdext, aby uzyskać więcej informacji.

Przykład

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

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_multimap <int, int> hm1;
   hash_multimap <int, int> :: const_iterator hm1_AcIter, hm1_RcIter;
   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.insert ( Int_Pair ( 3, 40 ) );

   hm1_RcIter = hm1.upper_bound( 1 );
   cout << "The 1st element of hash_multimap hm1 with "
        << "a key greater than 1 is: "
        << hm1_RcIter -> second << "." << endl;

   hm1_RcIter = hm1.upper_bound( 2 );
   cout << "The first element of hash_multimap hm1\n with a key "
        << " greater than 2 is: "
        << hm1_RcIter -> second << "." << endl;

   // If no match is found for the key, end( ) is returned
   hm1_RcIter = hm1.lower_bound( 4 );

   if ( hm1_RcIter == hm1.end( ) )
      cout << "The hash_multimap hm1 doesn't have an element "
           << "with a key of 4." << endl;
   else
      cout << "The element of hash_multimap hm1 with a key of 4 is: "
           << hm1_RcIter -> second << "." << endl;

   // The element at a specific location in the hash_multimap can be
   // found using a dereferenced iterator addressing the location
   hm1_AcIter = hm1.begin( );
   hm1_RcIter = hm1.upper_bound( hm1_AcIter -> first );
   cout << "The first element of hm1 with a key greater than"
        << endl << " that of the initial element of hm1 is: "
        << hm1_RcIter -> second << "." << endl;
}
  

Wymagania

Nagłówek: <hash_map>

Przestrzeń nazw: stdext

Zobacz też

Informacje

hash_multimap — Klasa

Standardowa biblioteka szablonów