命名空间
变体
操作

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

来自 cppreference.cn
template< class T >
ostream_joiner& operator=( const T& value );
(1) (库基础 TS v2)
ostream_joiner& operator=( const ostream_joiner& other ) = default;
(2) (库基础 TS v2)
(隐式声明)
ostream_joiner& operator=( ostream_joiner&& other ) = default;
(3) (库基础 TS v2)
(隐式声明)
1) 首先,如果私有 “首个元素” 标志为 false,则将分隔符 delim 插入到与此迭代器关联的输出流 os 中,如同 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 - 要写入到流的对象
other - 要赋值给此对象的 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.