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

STL

开发平台:

C/C++

  1. //文件名:CHAPTER9-28.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 multiset<int, less<int> > IntSet;
  10.    IntSet ms1;
  11.    multiset <int> :: const_iterator ms1_RcIter;
  12.    ms1.insert( 10 );
  13.    ms1.insert( 20 );
  14.    ms1.insert( 30 );
  15.    pair <IntSet::const_iterator, IntSet::const_iterator> p1, p2;
  16.    p1 = ms1.equal_range( 20 );
  17.    cout << "The upper bound of the element with "
  18.         << "a key of 20 in the multiset ms1 is: "<< *( p1.second ) << "." << endl;
  19.    cout << "The lower bound of the element with "
  20.         << "a key of 20 in the multiset ms1 is: "<< *( p1.first ) << "." << endl;
  21.    // If no match is found for the key,
  22.    // both elements of the pair return end( )
  23.    if ( ( p2.first == ms1.end( ) ) && ( p2.second == ms1.end( ) ) )
  24.       cout << "The multiset ms1 doesn't have an element "<< "with a key less than 40." << endl;
  25.    else
  26.       cout << "The element of multiset ms1 with a key >= 40 is: "<< *( p1.first ) << "." << endl;
  27. }