Tools.h++ Class Reference

Table Of Contents
The current item referenced by this iterator is undefined after construction or after a call to
reset(). The iterator becomes valid after being advanced with either a preincrement or operator().
For both operator++ and operator(), iterating past the last element will return a value equivalent
to boolean false. Continued increments will return a value equivalent to false until reset() is
called.
Persistence
None
Examples
#include<rw/tphmmap.h>
#include<iostream.h>
#include<rw/cstring.h>
struct silly_h{
unsigned long operator()(RWCString x) const
{ return x.length() * (long)x(0); }
};
int main(){
RWTPtrHashMultiMap
<RWCString,int,silly_h,equal_to<RWCString> > age;
RWTPtrHashMultiMapIterator
<RWCString,int,silly_h,equal_to<RWCString> > itr(age);
age.insert(new RWCString("John"),new int(30));
age.insert(new RWCString("Steve"),new int(17));
age.insert(new RWCString("Mark"),new int(24));
age.insert(new RWCString("Steve"),new int(24));
for(;++itr;)
cout << *itr.key() << "\'s age is " << *itr.value() << endl;
return 0;
}
Program Output (not necessarily in this order)
John's age is 30
Mark's age is 24
Steve's age is 24
Steve's age is 17