C++ Tutorial/set multiset/set bound range

Материал из C\C++ эксперт
Перейти к: навигация, поиск

set: lower_bound, upper_bound, equal_range

<source lang="cpp">/* The following code example is taken from the book

* "The C++ Standard Library - A Tutorial and Reference"
* by Nicolai M. Josuttis, Addison-Wesley, 1999
*
* (C) Copyright Nicolai M. Josuttis 1999.
* Permission to copy, use, modify, sell and distribute this software
* is granted provided this copyright notice appears in all copies.
* This software is provided "as is" without express or implied
* warranty, and with no claim as to its suitability for any purpose.
*/
  1. include <iostream>
  2. include <set>

using namespace std; int main () {

   set<int> c;
   c.insert(1);
   c.insert(2);
   c.insert(4);
   c.insert(5);
   c.insert(6);
   cout << "lower_bound(3): " << *c.lower_bound(3) << endl;
   cout << "upper_bound(3): " << *c.upper_bound(3) << endl;
   cout << "equal_range(3): " << *c.equal_range(3).first << " "
                              << *c.equal_range(3).second << endl;
   cout << endl;
   cout << "lower_bound(5): " << *c.lower_bound(5) << endl;
   cout << "upper_bound(5): " << *c.upper_bound(5) << endl;
   cout << "equal_range(5): " << *c.equal_range(5).first << " "
                              << *c.equal_range(5).second << endl;

}</source>

lower_bound(3): 4
upper_bound(3): 4
equal_range(3): 4 4
lower_bound(5): 5
upper_bound(5): 6
equal_range(5): 5 6