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

STL

开发平台:

C/C++

  1. //文件名:CHAPTER9-9.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.    set <int> s1;
  10.    set <int>::iterator s1_Iter;
  11.    set <int>::reverse_iterator s1_rIter;
  12.    set <int>::const_reverse_iterator s1_crIter;
  13.    s1.insert( 10 );
  14.    s1.insert( 20 );
  15.    s1.insert( 30 );
  16.    s1_rIter = s1.rend( );
  17.    s1_rIter--;
  18.    cout << "The last element in the reversed set is "
  19.         << *s1_rIter << "." << endl;
  20.    // end can be used to terminate an iteration throught a set in a forward order
  21.    cout << "The set is: ";
  22.    for ( s1_Iter = s1.begin( ) ; s1_Iter != s1.end( ); s1_Iter++ )
  23.       cout << *s1_Iter << " ";
  24.    cout << "." << endl;
  25.    // rend can be used to terminate an iteration throught a set in a reverse order
  26.    cout << "The reversed set is: ";
  27.    for ( s1_rIter = s1.rbegin( ) ; s1_rIter != s1.rend( ); s1_rIter++ )
  28.       cout << *s1_rIter << " ";
  29.    cout << "." << endl;
  30.    s1_rIter = s1.rend( );
  31.    s1_rIter--;
  32.    s1.erase ( *s1_rIter );
  33.    s1_rIter = s1.rend( );
  34.    cout << "After the erasure, the last element in the "
  35.         << "reversed set is " << *s1_rIter << "." << endl;
  36. }