multiset::upper_bound
Gibt ein Iterator zum ersten Element in einem Multiset mit einem Schlüssel, die größer ist, als ein bestimmter Schlüssel zurück.
const_iterator upper_bound(
const Key& _Key
) const;
iterator upper_bound(
const Key& _Key
);
Parameter
- _Key
Der Sortierschlüssel mit dem eines Elements vom Multiset verglichen werden, Argumentschlüssel, das durchsucht wird.
Rückgabewert
Iterator oder const_iterator, das die Position eines Elements in einem Multiset mit einem Schlüssel anspricht, die größer ist, als der Argumentschlüssel oder, die den Speicherort anspricht, 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