set::upper_bound
Gibt ein Iterator zum ersten Element in einem Satz zurück, der mit einem Schlüssel, die größer ist, als ein bestimmter Schlüssel.
const_iterator upper_bound(
const Key& _Key
) const;
iterator upper_bound(
const Key& _Key
);
Parameter
- _Key
Der Sortierschlüssel mit dem eines Elements aus dem Satz verglichen werden, Argumentschlüssel, der gefunden wird.
Rückgabewert
Iterator oder const_iterator, das die Position eines Elements in einem Satz anspricht, der mit einem Schlüssel, die größer ist, als der Argumentschlüssel oder, die den Speicherort anspricht, der dem letzten Element mit dem Satz folgt, wenn keine Übereinstimmung für die Schlüssel gefunden wird.
Beispiel
// set_upper_bound.cpp
// compile with: /EHsc
#include <set>
#include <iostream>
int main( )
{
using namespace std;
set <int> s1;
set <int> :: const_iterator s1_AcIter, s1_RcIter;
s1.insert( 10 );
s1.insert( 20 );
s1.insert( 30 );
s1_RcIter = s1.upper_bound( 20 );
cout << "The first element of set s1 with a key greater "
<< "than 20 is: " << *s1_RcIter << "." << endl;
s1_RcIter = s1.upper_bound( 30 );
// If no match is found for the key, end( ) is returned
if ( s1_RcIter == s1.end( ) )
cout << "The set s1 doesn't have an element "
<< "with a key greater than 30." << endl;
else
cout << "The element of set s1 with a key > 40 is: "
<< *s1_RcIter << "." << endl;
// The element at a specific location in the set can be found
// by using a dereferenced iterator addressing the location
s1_AcIter = s1.begin( );
s1_RcIter = s1.upper_bound( *s1_AcIter );
cout << "The first element of s1 with a key greater than"
<< endl << "that of the initial element of s1 is: "
<< *s1_RcIter << "." << endl;
}
Anforderungen
Header: <set>
Namespace: std