Руководство по стандартной библиотеке шаблонов STL

Итератор выходного потока (Ostream Iterator)


     istream_iterator<T> записывает (используя operator) последовательные элементы в выходной поток, из которого он был создан. Если он был создан с параметром конструктора char*, эта строка, называемая строкой разделителя (delimiter string), записывается в поток после того, как записывается каждое T. Невозможно с помощью выходного итератора получить значение. Его единственное использование - выходной итератор в ситуациях, подобных нижеследующему:

while (first != last) *result++ = *first++;

     ostream_iterator определён как:

template <class T> class ostream_iterator : public output_iterator { public: ostream_iterator(ostream& s); ostream_iterator(ostream& s, const char* delimiter); ostream_iterator(const ostream_iterator<T>& x); ~ostream_iterator(); ostream_iterator<T>& operator=(const T& value); ostream_iterator<T>& operator*(); ostream_iterator<T>& operator++(); ostream_iterator<T>& operator++(int); };

Содержание раздела