Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ Input_Iterators(3C++) — Sun WorkShop 5.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Input_Iterators(3C++)

Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.

 

NAME

 
Input_Iterators
 
 - A read-only, forward moving iterator.
 
 
 

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
 

Rogue Wave Software  —  Last change: 02 Apr 1998

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026