Freigeben über


multiset::upper_bound

Gibt einen Iterator auf das erste Element in einem Multiset mit einem Schlüssel, die größer ist, als ein angegebener Schlüssel zurück.

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

Parameter

  • _Key
    Der mit dem Sortierschlüssel eines Elements vom Multiset verglichen werden, Argumentschlüssel, das gefunden wird.

Rückgabewert

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

Beispiel

// multiset_upper_bound.cpp
// compile with: /EHsc
#include <set>
#include <iostream>

int main( )
{
   using namespace std;   
   multiset <int> ms1;
   multiset <int> :: const_iterator ms1_AcIter, ms1_RcIter;
   
   ms1.insert( 10 );
   ms1.insert( 20 );
   ms1.insert( 30 );

   ms1_RcIter = ms1.upper_bound( 20 );
   cout << "The first element of multiset ms1 with a key greater "
           << "than 20 is: " << *ms1_RcIter << "." << endl;

   ms1_RcIter = ms1.upper_bound( 30 );

   // If no match is found for the key, end( ) is returned
   if ( ms1_RcIter == ms1.end( ) )
      cout << "The multiset ms1 doesn't have an element "
              << "with a key greater than 30." << endl;
   else
      cout << "The element of multiset ms1 with a key > 40 is: "
           << *ms1_RcIter << "." << endl;

   // The element at a specific location in the multiset can be 
   // found using a dereferenced iterator addressing the location
   ms1_AcIter = ms1.begin( );
   ms1_RcIter = ms1.upper_bound( *ms1_AcIter );
   cout << "The first element of ms1 with a key greater than"
        << endl << "that of the initial element of ms1 is: "
        << *ms1_RcIter << "." << endl;
}
  
  
  

Anforderungen

Header: <set>

Namespace: std

Siehe auch

Referenz

multiset Class

Standardvorlagenbibliothek