# std::ostream_iterator< _Tp, _CharT, _Traits > Class Template Reference

Inheritance diagram for std::ostream_iterator< _Tp, _CharT, _Traits >:

List of all members.

## Detailed Description

### template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>
class std::ostream_iterator< _Tp, _CharT, _Traits >

This class provides an iterator to write to an ostream. The type Tp is the only type written by this iterator and there must be an operator<<(Tp) defined.

Parameters:

  | Tp | The type to write to the ostream.
  | CharT | The ostream char_type.
  | Traits | The ostream char_traits.

Definition at line 152 of file stream_iterator.h.

## Public Types

- typedef _Distance difference_type
- typedef _Category iterator_category
- typedef _Pointer pointer
- typedef _Reference reference
- typedef _Tp value_type

- typedef _CharT char_type
- typedef basic_ostream< _CharT,
  _Traits > ostream_type
- typedef _Traits traits_type

## Public Member Functions

- ostream_iterator & operator * ()
- ostream_iterator & operator++ (int)
- ostream_iterator & operator++ ()
- ostream_iterator & operator= (const _Tp &__value)
- ostream_iterator (const ostream_iterator &__obj)
- ostream_iterator (ostream_type &__s, const _CharT *__c)
- ostream_iterator (ostream_type &__s)

## Member Typedef Documentation

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

typedef _CharT std::ostream_iterator< _Tp, _CharT, _Traits >::char_type

Public typedef.

Definition at line 158 of file stream_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>

typedef _Distance std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::difference_type `[inherited]`

Distance between iterators is represented as this type.

Reimplemented in std::reverse_iterator< _Iterator >.

Definition at line 113 of file stl_iterator_base_types.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>

typedef _Category std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::iterator_category `[inherited]`

One of the tag types.

Definition at line 109 of file stl_iterator_base_types.h.

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

typedef basic_ostream<_CharT, _Traits> std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_type

Public typedef.

Definition at line 160 of file stream_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>

typedef _Pointer std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::pointer `[inherited]`

This type represents a pointer-to-value_type.

Reimplemented in std::_Bit_iterator, std::_Bit_const_iterator, std::reverse_iterator< _Iterator >, __gnu_cxx::_Rope_const_iterator< _CharT, _Alloc >, and __gnu_cxx::_Rope_iterator< _CharT, _Alloc >.

Definition at line 115 of file stl_iterator_base_types.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>

typedef _Reference std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::reference `[inherited]`

This type represents a reference-to-value_type.

Reimplemented in std::_Bit_iterator, std::_Bit_const_iterator, std::reverse_iterator< _Iterator >, __gnu_cxx::_Rope_const_iterator< _CharT, _Alloc >, and __gnu_cxx::_Rope_iterator< _CharT, _Alloc >.

Definition at line 117 of file stl_iterator_base_types.h.

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

typedef _Traits std::ostream_iterator< _Tp, _CharT, _Traits >::traits_type

Public typedef.

Definition at line 159 of file stream_iterator.h.

template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t, typename _Pointer = _Tp*, typename _Reference = _Tp&>

typedef _Tp std::iterator< _Category, _Tp, _Distance, _Pointer, _Reference >::value_type `[inherited]`

The type "pointed to" by the iterator.

Reimplemented in __gnu_cxx::sequence_buffer< _Sequence, _Buf_sz >.

Definition at line 111 of file stl_iterator_base_types.h.

## Constructor & Destructor Documentation

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator | ( | ostream_type & | __s | ) | `[inline]`

Construct from an ostream.

Definition at line 169 of file stream_iterator.h.

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator | ( | ostream_type & | __s,
|  | const _CharT * | __c |
| ) |  |  | `[inline]`

Construct from an ostream.

The delimiter string c is written to the stream after every Tp written to the stream. The delimiter is not copied, and thus must not be destroyed while this iterator is in use.

Parameters:

  | s | Underlying ostream to write to.
  | c | CharT delimiter string to insert.

Definition at line 181 of file stream_iterator.h.

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

std::ostream_iterator< _Tp, _CharT, _Traits >::ostream_iterator | ( | const ostream_iterator< _Tp, _CharT, _Traits > & | __obj | ) | `[inline]`

Copy constructor.

Definition at line 185 of file stream_iterator.h.

## Member Function Documentation

template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT>>

ostream_iterator& std::ostream_iterator< _Tp, _CharT, _Traits >::operator= | ( | const _Tp & | __value | ) | `[inline]`

constructed with delimiter string, writes delimiter to ostream.

Definition at line 191 of file stream_iterator.h.

References __glibcxx_requires_cond.

The documentation for this class was generated from the following file:

- stream_iterator.h