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

STL

开发平台:

C/C++

  1. //文件名:CHAPTER9-32.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. void main( )
  8. {
  9.    multiset <int> ms1;
  10.    multiset <int> :: const_iterator ms1_AcIter, ms1_RcIter;
  11.    ms1.insert( 10 );
  12.    ms1.insert( 20 ); ms1.insert( 20 );
  13.    ms1.insert( 30 );
  14.    ms1_RcIter = ms1.upper_bound( 20 );
  15.    cout << "The first element of multiset ms1 with a key greater "
  16.            << "than 20 is: " << *ms1_RcIter << "." << endl;
  17.    ms1_RcIter = ms1.upper_bound( 30 );
  18.    // If no match is found for the key, end( ) is returned
  19.    if ( ms1_RcIter == ms1.end( ) )
  20.       cout << "The multiset ms1 doesn't have an element "<< "with a key greater than 30." << endl;
  21.    else
  22.       cout << "The element of multiset ms1 with a key > 40 is: "<< *ms1_RcIter << "." << endl;
  23.    // The element at a specific location in the multiset can be 
  24.    // found using a dereferenced iterator addressing the location
  25.    ms1_AcIter = ms1.begin( );
  26.    ms1_RcIter = ms1.upper_bound( *ms1_AcIter );
  27.    cout << "The first element of ms1 with a key greater than"
  28.         << endl << "that of the initial element of ms1 is: "<< *ms1_RcIter << "." << endl;
  29. }