fork(11) download
  1. #include <array>
  2. #include <iostream>
  3. #include <utility>
  4.  
  5. namespace detail
  6. {
  7.  
  8. template <typename T, std::size_t...Is>
  9. std::array<T, sizeof...(Is)> make_array(const T& value, std::index_sequence<Is...>)
  10. {
  11. return {{(static_cast<void>(Is), value)...}};
  12. }
  13. }
  14.  
  15. template <std::size_t N, typename T>
  16. std::array<T, N> make_array(const T& value)
  17. {
  18. return detail::make_array(value, std::make_index_sequence<N>());
  19. }
  20.  
  21. int main()
  22. {
  23. auto a = make_array<42>('.');
  24.  
  25. for (auto c : a) {
  26. std::cout << c;
  27. }
  28. std::cout << std::endl;
  29. }
  30.  
Success #stdin #stdout 0s 3468KB
stdin
Standard input is empty
stdout
..........................................