output_iterator
|
|
Category: iterators |
Component type: type |
Description
Output_iterator is an iterator base class: it is intended that an
iterator that is a model of Output Iterator may be defined by inheriting from
output_iterator [1]. Output_iterator is entirely empty: it has no
member functions, member variables, or nested types. It exists solely
to simplify the definition of the functions iterator_category,
distance_type, and value_type.
Example
class my_output_iterator : public output_iterator
{
...
};
This declares my_output_iterator to be an Output Iterator.
If Iter is an object of class my_output_iterator, then
iterator_category(Iter) will return output_iterator_tag(),
and distance_type and value_type
will be undefined for objects of class my_output_iterator.
Definition
Defined in the standard header iterator, and in the
nonstandard backward-compatibility header iterator.h.
This class is no longer part of the C++ standard, although
it was present in early drafts of the standard. It is retained
in this implementation for backward compatibility.
Template parameters
None. (Note that Output Iterators need have neither distance
types nor value types.)
Model of
Assignable
Public base classes
None
Type requirements
None.
Public base classes
None.
Members
None.
New Members
None.
Notes
[1]
It is not required that an Output Iterator inherit from the
base output_iterator. It is, however, required that the function
iterator_category be defined for every Output Iterator.
(Or, if you are using the iterator_traits mechanism, that
iterator_traits is properly specialized for every Output Iterator.)
Since it is defined for the base output_iterator, the easiest way to
ensure that it defined for a new type is to derive that class from
output_iterator and rely on the derived-to-base standard conversion
of function arguments.
See also
The Iterator Tags overview, iterator_traits,
iterator_category,
value_type, distance_type,
input_iterator, forward_iterator,
bidirectional_iterator, random_access_iterator
Copyright ©
1999 Silicon Graphics, Inc. All Rights Reserved.
TrademarkInformation
webmaster@www.sgi.com