Freigeben über


map::upper_bound

Gibt ein Iterator zum ersten Element in einer Zuordnung zurück, die mit einem Schlüssel, die einen Wert, der größer als der des angegebenen Schlüssels ist.

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

Parameter

  • _Key
    Der mit dem Sortierschlüsselwert eines Elements aus der Zuordnung zu vergleichenden Argumentschlüsselwert, die gesucht wird.

Rückgabewert

Iterator oder const_iterator, das die Position eines Elements in einer Zuordnung behandelt, die mit einem Schlüssel, die größer ist, als der Argumentschlüssel oder, die den Speicherort anspricht, der dem letzten Element mit der Zuordnung erfolgreich ist, wenn keine Übereinstimmung für die Schlüssel gefunden wird.

Wenn const_iterator der Rückgabewert zugewiesen wird, ist das Zuordnungsobjekt nicht geändert werden. Wenn Iterator der Rückgabewert zugewiesen wird, ist das Zuordnungsobjekt geändert werden.

Beispiel

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

int main( )
{
   using namespace std;
   map <int, int> m1;
   map <int, int> :: const_iterator m1_AcIter, m1_RcIter;
   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_RcIter = m1.upper_bound( 2 );
   cout << "The first element of map m1 with a key "
        << "greater than 2 is: "
        << m1_RcIter -> second << "." << endl;

   // If no match is found for the key, end is returned
   m1_RcIter = m1. upper_bound ( 4 );

   if ( m1_RcIter == m1.end( ) )
      cout << "The map m1 doesn't have an element "
           << "with a key greater than 4." << endl;
   else
      cout << "The element of map m1 with a key > 4 is: "
           << m1_RcIter -> second << "." << endl;

   // The element at a specific location in the map can be found 
   // using a dereferenced iterator addressing the location
   m1_AcIter = m1.begin( );
   m1_RcIter = m1. upper_bound ( m1_AcIter -> first );
   cout << "The 1st element of m1 with a key greater than\n"
        << "that of the initial element of m1 is: "
        << m1_RcIter -> second << "." << endl;
}
  

Anforderungen

Header: <map>

Namespace: std

Siehe auch

Referenz

map-Klasse

Standardvorlagenbibliothek