C++ Iterator Library - ostream_iterator



Description

It is a special output iterator that write sequentially to an output stream.

Declaration

Following is the declaration for std::ostream_iterator.

C++11

template <class T, class charT = char, class traits = char_traits<charT> >
  class ostream_iterator;

Parameters

  • T − It is an element type for the iterator.

  • charT − It is a first template parameter of the associated basic_istream object.

  • traits − It is a second template parameter of the associated basic_istream.

  • Distance − It is the difference between two iterators.

Return value

none

Exceptions

If x somehow throws while applying the unary operator& to it, this function never throws exceptions.

Time complexity

constant for random-access iterators.

Example

The following example shows the usage of std::ostream_iterator.

#include <iostream>     
#include <iterator>     
#include <vector>       
#include <algorithm>    

int main () {
   std::vector<int> myvector;
   for (int i = 10; i > 1; i--) myvector.push_back(i*10);

   std::ostream_iterator<int> out_it (std::cout,", ");
   std::copy ( myvector.begin(), myvector.end(), out_it );
   return 0;
}

Let us compile and run the above program, this will produce the following result −

100, 90, 80, 70, 60, 50, 40, 30, 20,
iterator.htm
Advertisements