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

From cppreference.com
 
 
Technical specifications
Filesystem library (filesystem TS)
Library fundamentals (library fundamentals TS)
Library fundamentals 2 (library fundamentals TS v2)
Library fundamentals 3 (library fundamentals TS v3)
Extensions for parallelism (parallelism TS)
Extensions for parallelism 2 (parallelism TS v2)
Extensions for concurrency (concurrency TS)
Extensions for concurrency 2 (concurrency TS v2)
Concepts (concepts TS)
Ranges (ranges TS)
Reflection (reflection TS)
Mathematical special functions (special functions TR)
 
 
 
ostream_joiner(ostream_type& stream, const DelimT& delimiter);
(1) (library fundamentals TS v2)
ostream_joiner(ostream_type& stream, DelimT&& delimiter);
(2) (library fundamentals TS v2)
ostream_joiner(const ostream_joiner& other) = default;
(3) (library fundamentals TS v2)
(implicitly declared)
ostream_joiner(ostream_joiner&& other) = default;
(4) (library fundamentals TS v2)
(implicitly declared)

1) Constructs the iterator with the private ostream_type* member initialized with std::addressof(stream), the private delimiter member initialized with delimiter, and the private "first element" flag set to true.

2) Constructs the iterator with the private ostream_type* member initialized with std::addressof(stream), the private delimiter member initialized with std::move(delimiter), and the private "first element" flag set to true.

3-4) Implicitly declared copy/move constructor that copy/move constructs the private stream pointer, delimiter, and "first element" flag members.

Parameters

stream - the output stream to be accessed by this iterator
delimiter - the delimiter to be inserted into the stream in between two outputs
other - the ostream_joiner object from which this object is to be copy- or move-constructed

Example