2

ドキュメントから、次のstd::arrayように初期化できることがわかります (集約初期化を使用)。

struct S {
    S(): arr{0,1} { }
    std::array<int,2> arr;
};

とにかく、この場合、問題が発生します。

template<int N>
struct S {
    S(): arr{/*??*/} { }
    std::array<int,N> arr;
};

構築中に配列を初期化するにはどうすればよいですか (インデックスを渡す ed 関数を使用するか、からsの値を使用する例として)?0N-1constexpr

4

1 に答える 1