C++ 20 引入std::ranges::iota_view
。
for
例如,它可以用作循环的一部分。
for (auto i: std::ranges::iota_view(0, 10))
它似乎需要两个模板参数。例如,下面的代码可以编译。
std::ranges::iota_view<int64_t, int64_t>(0, 10)
第一个模板参数是W
which should be std::weakly_incrementable
。第二个模板参数是Bound
which should be std::semiregular
。
这两个模板参数有什么用处?能用来控制 返回的类型吗iota_view
?
换句话说,如果有的话,它们对auto i
上面例子中推导的类型有什么影响?