RWTValMapIterator(3C++) RWTValMapIterator(3C++)
Name
RWTValMapIterator<K,T,C> - Rogue Wave library class
Synopsis
#include<rw/tvmap.h>
RWTValMap<K,T,C> vm;
RWTValMapIterator<K,T,C> itr(vm);
Standard C++ Library Dependent!RWTValMapIterator requires the Standard C++ Library.
DescriptionRWTValMapIterator is supplied with Tools.h++ 7 to provide an iterator
interface to RWTValMapIterator that is backward compatable with the
container iterators provided in Tools.h++ 6.x. The order of iteration
over an RWTValMap is dependent on the comparator object supplied as
applied to the key values 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
xamples
#include<rw/tvmap.h>
#include<iostream.h>
#include<rw/cstring.h>
int main(){
RWTValMap<RWCString,int,greater<RWCString> > age;
RWTValMapIterator<RWCString,int,greater<RWCString> > itr(age);
age.insert("John", 30);
age.insert("Steve",17);
age.insert("Mark",24);
//Insertion is rejected, no duplicates allowed
age.insert("Steve",24);
for(;itr();)
cout << itr.key() << "'s age is " << itr.value() << endl;
Page 1
RWTValMapIterator(3C++) RWTValMapIterator(3C++)
return 0;
}
Program Output
Steve's age is 17
Mark's age is 24
Public Constructors
John's age is 30
RWTValMapIterator<K,T,C>
(RWTValMap<K,T,C>&h);
Creates an iterator for the map h. The iterator begins in an undefined
state and must be advanced before the first association will be
accessible.
Public Member Operators
RWBoolean
operator()();
Advances self to the next element. If the iterator has advanced past the
last element in the collection, false will be returned. Otherwise, true
will be returned.
RWBoolean
operator++();
Advances self to the next element. If the iterator has been reset or
just created self will now reference the first element. If, before
iteration, self pointed to the last association in the map, self will now
reference an undefined value and false will be returned. Otherwise, true
is returned. Note: no postincrement operator is provided.
Public Member Functions
RWTValMap<K,T,C>*
container() const;
Returns a pointer to the collection being iterated over.
Page 2
RWTValMapIterator(3C++) RWTValMapIterator(3C++)
K
key() const;
Returns the key portion of the association currently referenced by self.
void
reset();
void
reset(RWTValMap<K,T,C>& h);
Resets the iterator so that after being advanced it will reference the
first element of the collection. Using reset() with no argument will
reset the iterator on the current container. Supplying a RWTValMap with
reset() will reset the iterator on that container.
T
value();
Returns the value portion of the association referenced by self.
Page 3