# std::experimental::make_ostream_joiner

From cppreference.com
< cpp‎ | experimental‎ | ostream joiner

Defined in header `<experimental/iterator>` |  |
template< class CharT, class Traits, class DelimT > std::experimental::ostream_joiner<std::decay_t<DelimT>, CharT, Traits> make_ostream_joiner( std::basic_ostream<CharT, Traits>& os, DelimT&& delimiter ); |  | (library fundamentals TS v2)

Creates an `ostream_joiner` object, deducing the template arguments from the types of the function arguments.

### Parameters

os | - | the `basic_ostream` object that the iterator is to be associated to
delimiter | - | the delimiter

### Return value

An `ostream_joiner` object, created as if by std::experimental::ostream_joiner<std::decay_t<DelimT>, CharT, Traits>(os, std::forward<DelimT>(delimiter))

### Example

Run this code

    #include <experimental/iterator>
    #include <iostream>
    #include <vector>

    int main()
    {
        std::vector<int> x{1, 2, 3, 4};
        std::copy(x.begin(), x.end(),
                  std::experimental::make_ostream_joiner(std::cout, ", "));
    }

Output:

    1, 2, 3, 4

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/experimental/ostream_joiner/make_ostream_joiner&oldid=155051"