Rogue Wave banner
Previous fileTop of documentContentsIndexNext file

Input Iterators


Iterator

Summary

A read-only, forward moving iterator.

Data Type and Member Function Indexes
(exclusive of constructors and destructors)

None

Description


NOTE:For a complete discussion of iterators, see the Iterators section of this reference.

Iterators are a generalization of pointers that allow a C++ program to uniformly interact with different data structures. Input iterators are read-only, forward moving iterators that satisfy the requirements listed below.

Key to Iterator Requirements

The following key pertains to the iterator requirement descriptions listed below:

a and b values of type X
n value representing a distance between two iterators
u, Distance, tmp and m identifiers
r value of type X&
t value of type T

Requirements for Input Iterators

The following expressions must be valid for input iterators:

X u(a) copy constructor, u == a
X u = a assignment, u == a
a == b, a != b return value convertible to bool
*a a == b implies *a == *b
++r returns X&
r++ return value convertible to const X&
*r++ returns type T
a -> m returns (*a).m

For input iterators, a == b does not imply that ++a == ++b.

Algorithms using input iterators should be single pass algorithms. That is, they should not pass through the same iterator twice.

The value of type T does not have to be an lvalue.

See Also

Iterators, Output Iterators



Previous fileTop of documentContentsIndexNext file
©Copyright 1998, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.
OEM Release, June 1998