Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Returns an iterator to the first element in a multiset with a key that is greater than a specified key.
const_iterator upper_bound(
const Key& _Key
) const;
iterator upper_bound(
const Key& _Key
);
Parameters
- _Key
The argument key to be compared with the sort key of an element from the multiset being searched.
Return Value
An iterator or const_iterator that addresses the location of an element in a multiset with a key that is greater than the argument key, or that addresses the location succeeding the last element in the multiset if no match is found for the key.
Example
// 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;
}
The first element of multiset ms1 with a key greater than 20 is: 30. The multiset ms1 doesn't have an element with a key greater than 30. The first element of ms1 with a key greater than that of the initial element of ms1 is: 20.
Requirements
Header: <set>
Namespace: std