std::integer_sequence 是 C++14 引入的一个实用工具,用于生成一个固定大小的整数序列。这个序列可以被用作元编程中的索引或者参数传递给其他模板元编程构造。
例子
#include <iostream>
#include <type_traits>
template <typename T, T... ints>
void print_sequence(std::integer_sequence<T, ints...> int_seq)
{
std::cout << "sequence size " << int_seq.size() << ": ";
((std::cout << ints << ' '), ...);
std::cout << '\n';
}
// 主函数
int main()
{ print_sequence(std::integer_sequence<std::size_t, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9>{});
return 0;
}
本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议。转载请注明来自 张拓的博客!