可变参数模板整数序列的偏移量

tub*_*erd 2 c++ templates c++11 c++14

好的,我会尽量保持这个简短.我知道你可以为变量模板生成一个整数序列std::index_sequence_for.现在假设我希望索引序列从特定的偏移量开始,但仍然与可变参数模板参数列表的长度相同.那可能吗?我没有在cppreference上找到任何类型的东西.

Jar*_*d42 7

你可以轻松地写自己的:

template <std::size_t O, std::size_t ... Is>
std::index_sequence<(O + Is)...> add_offset(std::index_sequence<Is...>)
{
    return {};
}

template <std::size_t O, std::size_t N>
auto make_index_sequence_with_offset()
{
    return add_offset<O>(std::make_index_sequence<N>{});
}
Run Code Online (Sandbox Code Playgroud)

演示