Man Page Output_Iterators.3



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



NAME

     Output_Iterators

      - A write-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 struc-
     tures.  Output  iterators  are  write-only,  forward  moving
     iterators  that  satisfy the requirements listed below. Note
     that unlike other iterators used with the standard  library,
     output iterators cannot be constant.





KEY TO ITERATOR REQUIREMENTS

     The following key  pertains  to  the  iterator  requirements
     listed below:

     a and b   values of type X



     n   value of distance type



     u, Distance, tmp and m   identifiers



     r   value of type X&



     t   value of type T



REQUIREMENTS FOR OUTPUT ITERATORS

     The following expressions must be valid  for  output  itera-
     tors:

     X(a)   copy constructor, a == X(a)



     X u(a)   copy constructor, u == a



     X u = a   assignment, u == a



     *a = t   result is not used



     ++r   returns X&



     r++   return value convertible to const X&



     *r++ = t   result is not used



     The only valid use for the operator * is  on  the  left-hand
     side of the assignment statement.

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





SEE ALSO

     Iterators, Input_Iterators