Sequence array initialization with template

前端 未结 1 1033
有刺的猬
有刺的猬 2020-12-19 12:26

I want to initialize an array with a sequence of ints from 0 to N - 1

#include 
#include          


        
相关标签:
1条回答
  • 2020-12-19 13:04

    I'm not sure if this meets your requirements.

    #include <array>
    #include <iostream>
    
    template <size_t ...I>
    constexpr auto init(std::index_sequence<I...>) {
        return std::array<size_t, sizeof...(I)>{I...};
    }
    
    int main(void)
    {
        std::array<size_t, 10> a = init(std::make_index_sequence<10>());
    
        for (int const & i : a)
            std::cout << i << "\n";
        return 0;
    }
    
    0 讨论(0)
提交回复
热议问题