SetOps.cc


#include <iostream>                      // for cout, endl
#include <string>
#include <set>                                                    //(A)
using namespace std;

int main()
{
    set<string> animals;                                          //(B)

    animals.insert( "cheetah" );                                  //(C)
    animals.insert( "lion" );                                     //(D)
    animals.insert( "cat" );                                      //(E)
    animals.insert( "elephant" );                                 //(F)
    animals.insert( "cat" );             //attempting a duplicate //(G)

    cout <<  animals.size() << endl;;    // 4                     //(H)
                                                             
    typedef set<string>::const_iterator CI;                  
    for (CI iter = animals.begin();                               //(I)
            iter != animals.end(); 
            iter++) 
        cout << *iter << " ";            // cat cheetah elephant lion

    animals.erase( "lion" );                                      //(J)
    cout <<  animals.size() << endl;;    // 3                     //(K)

    for ( CI iter = animals.begin();                              //(L)
          iter != animals.end(); 
          iter++ )
        cout << *iter << " ";            // cat cheetah elephant

    return 0;
}


Results


C:\classes\ece538\work\kak05>SetOps
4
cat cheetah elephant lion 3
cat cheetah elephant


Maintained by John Loomis, updated Sun Jan 07 14:17:17 2007