Suppose type foo_t with a named constructor idiom, make_foo(). Now, I want to have exactly 123 foo\'s - no more, no less. So, I\'m thinking about a
foo_t
make_foo()
The usual.
template<size_t...Is> std::array<foo_t, sizeof...(Is)> make_foos(std::index_sequence<Is...>) { return { ((void)Is, make_foo())... }; } template<size_t N> std::array<foo_t, N> make_foos() { return make_foos(std::make_index_sequence<N>()); }