Skip to content

Latest commit

 

History

History
69 lines (54 loc) · 2.11 KB

ostream_iterator.md

File metadata and controls

69 lines (54 loc) · 2.11 KB

ostream_iterator

  • iterator[meta header]
  • std[meta namespace]
  • class template[meta id-type]
namespace std {
  template <class T, class CharT = char, class Traits = char_traits<CharT> >
  class ostream_iterator
    : public iterator<output_iterator_tag, void, void, void, void>
}
  • char_traits[link /reference/string/char_traits.md]
  • iterator[link /reference/iterator/iterator.md]
  • output_iterator_tag[link /reference/iterator/iterator_tag.md]

概要

ostream_iteratorは出力イテレータであり、代入の際に外部から渡されたostreamオブジェクトにoperator<<()で値を出力するイテレータアダプタである。

メンバ関数

名前 説明 対応バージョン
(constructor) コンストラクタ
~ostream_iterator() = default デストラクタ
operator= 代入演算子
operator* 間接参照
operator++ インクリメント

メンバ型

名前 説明 対応バージョン
char_type CharT (デフォルトはchar)
traits_type Traits (デフォルトはchar_traits<CharT>)
ostream_type basic_ostream<CharT, Traits>
difference_type void
pointer void
value_type void
iterator_category output_iterator_tag
reference void

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

int main()
{
  const std::vector<int> v = {1, 2, 3};

  // vの要素をイテレートしながらstd::coutに出力(区切り文字にカンマ)
  std::copy(v.begin(), v.end(), std::ostream_iterator<int>(std::cout, ","));
}
  • std::ostream_iterator[color ff0000]

出力

1,2,3,

参照