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 (c) 1998, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.
OEM Release, June 1998