Click on the banner to return to the Class Reference home page.

©Copyright 1996 Rogue Wave Software

RWTValMultiMapIterator<K,T,C>

Synopsis

#include<rw/tvmmap.h>
RWTValMultiMap<K,T,C> vm;
RWTValMultiMapIterator<K,T,C> itr(vm);

Standard C++ Library Dependent!


RWTValMultiMapIterator requires the Standard C++ Library.



Description

RWTValMultiMapIterator is supplied with Tools.h++ 7 to provide an iterator interface for class RWTValMultiMap that has backward compatibility with the container iterators provided in Tools.h++ 6.x.

The order of iteration for an RWTValMultiMap is dependent upon the comparator object as applied to the keys of the stored associations.

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/tvmmap.h>
#include<iostream.h>
#include<rw/cstring.h>

int main(){
   RWTValMultiMap<RWCString,int,greater<RWCString> > a;
   RWTValMultiMapIterator
      <RWCString,int,greater<RWCString> > itr(a);

   a.insert("John", 30);
   a.insert("Steve",17);
   a.insert("Mark",24);
   a.insert("Steve",24);

   for(;itr();)
     cout << itr.key() << "\'s age is " << itr.value() << endl;

   return 0;
}

Program Output 
Steve's age is 17
Steve's age is 24
Mark's age is 24
John's age is 30

Public Constructors

RWTValMultiMapIterator<K,T,C>
(RWTValMultiMap<K,T,C>&m); 




Public Member Operators

RWBoolean
operator()();
RWBoolean
operator++();

Public Member Functions

RWTValMultiMap<K,T,C>*
container() const;
K
key() const;
void
reset();
void
reset(RWTValMultiMap<K,T,C>& h);
T
value();