CHAPTER9-27.cpp
上传用户:fjc899
上传日期:2007-07-03
资源大小:187k
文件大小:1k
源码类别:

STL

开发平台:

C/C++

  1. //文件名:CHAPTER9-27.cpp
  2. #include <set>
  3. #include <iostream>
  4. #if _MSC_VER > 1020   // if VC++ version is > 4.2
  5.    using namespace std;  // std c++ libs implemented in std
  6. #endif
  7. int main( )
  8. {
  9.    typedef set<int, less< int > > IntSet;
  10.    IntSet s1;
  11.    set <int, less< int > > :: const_iterator s1_RcIter;
  12.    s1.insert( 10 );
  13.    s1.insert( 20 );
  14.    s1.insert( 30 );
  15.    pair <IntSet::const_iterator, IntSet::const_iterator> p1, p2;
  16.    p1 = s1.equal_range( 20 );
  17.    cout << "The upper bound of the element with "
  18.         << "a key of 20 in the set s1 is: "<< *(p1.second) << "." << endl;
  19.    cout << "The lower bound of the element with "
  20.         << "a key of 20 in the set s1 is: "<< *(p1.first) << "." << endl;
  21.    // If no match is found for the key, both elements of the pair return end( )
  22.    if ( ( p2.first == s1.end( ) ) && ( p2.second == s1.end( ) ) )
  23.       cout << "The set s1 doesn't have an element "<< "with a key less than 40." << endl;
  24.    else
  25.       cout << "The element of set s1 with a key >= 40 is: "<< *(p1.first) << "." << endl;
  26. }