template<class U, class E=char, class Tr=char_traits<E> >
class ostream_iterator
: public iterator<output_iterator_tag, void, void> {
public:
typedef U value_type;
typedef E char_type;
typedef T traits_type;
typedef basic_ostream<E, T> ostream_type;
ostream_iterator(ostream_type& os);
ostream_iterator(ostream_type& os, const E *delim);
ostream_iterator<U, E, T>& operator=(const U& val);
ostream_iterator<U, E, T>& operator*();
ostream_iterator<U, E, T>& operator++();
ostream_iterator<U, E, T> operator++(int);
};
The template class describes an output iterator object. It inserts objects of class U
into an output stream, which it
accesses via an object it stores, of type pointer to basic_ostream<
E
,
T
>
. It also stores a pointer to a delimiter
string, a null-terminated string of elements of type E
, which is appended after each insertion. (Note that the string itself
is not copied by the constructor.)