- iterator[meta header]
- std[meta namespace]
- class template[meta id-type]
namespace std {
template <class CharT, class Traits = char_traits<CharT> >
class ostreambuf_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]
ostreambuf_iterator
は出力イテレータであり、代入の際に外部から渡されたstreambuf
オブジェクトにストリームバッファのsputc()
メンバ関数で値を出力するイテレータアダプタである。
ostream_iterator
がフォーマットされた出力を扱うのに対し、osteambuf_iterator
はフォーマットなしの生の出力を扱う。
名前 | 説明 | 対応バージョン |
---|---|---|
(constructor) |
コンストラクタ | |
~ostream_iterator() = default |
デストラクタ | |
operator= |
代入演算子 | |
operator* |
間接参照 | |
operator++ |
インクリメント | |
failed |
書き込みが失敗したかを判定する |
名前 | 説明 | 対応バージョン |
---|---|---|
char_type |
CharT |
|
traits_type |
Traits (デフォルトはchar_traits<CharT> ) |
|
streambuf_type |
basic_streambuf<CharT, Traits> |
|
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 <algorithm>
#include <string>
int main()
{
const std::string s = "Hello";
// 文字列"Hello"を標準出力に出力する
std::copy(s.begin(), s.end(), std::ostreambuf_iterator<char>(std::cout));
}
- std::ostreambuf_iterator[color ff0000]
Hello