名前空間
変種
操作

std::experimental::ostream_joiner<DelimT,CharT,Traits>::operator=

From cppreference.com
 
 
 
 
 
template< class T >
ostream_joiner& operator=( const T& value );
(1) (Library Fundamentals TS v2)
ostream_joiner& operator=( const ostream_joiner& other ) = default;
(2) (Library Fundamentals TS v2)
(暗黙的に宣言)
ostream_joiner& operator=( ostream_joiner&& other ) = default;
(3) (Library Fundamentals TS v2)
(暗黙的に宣言)
1) まず、プライベートな「最初の要素」フラグがfalseの場合、このイテレータに関連付けられた出力ストリームosに区切り文字delimを挿入します。これはos << delim;のように扱われます。
次に、「最初の要素」フラグを無条件にfalseに設定し、`value`を出力ストリームに挿入します。これはos << value;のように扱われます。
out_streamdelimfirst_elementを、それぞれプライベートなストリームポインタ、区切り文字、「最初の要素」フラグのメンバとします。この関数は以下と同等です。
if (!first_element)
    *out_stream << delim;
first_element = false;
*out_stream << value;
return *this;
2,3) 暗黙的に宣言されたコピー/ムーブ代入演算子。プライベートなストリームポインタ、区切り文字、「最初の要素」フラグのメンバをコピー/ムーブ代入します。

[編集] パラメータ

value - ストリームに書き込まれるオブジェクト
その他 - このオブジェクトに代入されるostream_joinerオブジェクト

[編集] 戻り値

*this.

[編集]

#include <experimental/iterator>
#include <iostream>
 
int main()
{
    auto joiner = std::experimental::make_ostream_joiner(std::cout, ", ");
    joiner = "First";
    joiner = "do no harm.";  // prefixes with the delimiter
}

出力

First, do no harm.
English 日本語 中文(简体) 中文(繁體)