Учитывая, что у меня есть этот тип
template<int ...Is>
struct A {};
Можно ли "сгенерировать" тип A<0, 1, 2, 3, 4, 5,..., d>
только из целого числа d?
Я думал о чем-то вроде
template<int d>
struct B : A<std::index_sequence<d>...> {}
, но это не работает.
Другой вариант - специализироваться вручную:
template<int d>
struct B;
template<>
struct B<0>: A<> {};
template<>
struct B<1>: A<0> {};
template<>
struct B<2>: A<0, 1> {};
template<>
struct B<3>: A<0, 1, 2> {};
, но, очевидно, я не смогу написать B<3000> b;
[править] Мой фактический вариант использования:"немного" сложнее, чем это.Я не хочу переопределять std :: integer_sequence, но что-то более сложное.