std::ranges::chunk_view<V>::chunk_view

来自cppreference.com
< cpp‎ | ranges‎ | chunk view
 
 
范围库
范围适配器
 
std::ranges::chunk_view
成员函数
chunk_view::chunk_view
input_range
推导指引
outer-iterator
outer-iterator::value_type
inner-iterator
 
constexpr explicit chunk_view( V base, ranges::range_difference_t<V> n );
(C++23 起)

构造 chunk_view,初始化底层数据成员:

  • std::move(base) 移动构造 base_
  • n 初始化"区块大小" n_.

此外,如果 V 恰好仅实现了 input_range,那么构造函数初始化下列仅用于解释的数据成员:

如果 n 小于或等于 0,则其行为未定义。

参数

base - 适配的视图
n - 区块大小

示例

#include <algorithm>
#include <iostream>
#include <ranges>
 
int main()
{
    auto i = std::views::iota(0, 10);
    auto w = std::ranges::chunk_view(i, 4);
 
    std::ranges::for_each(w, [](auto const v)
    {
        for (auto e : v)
            std::cout << e << ' ';
        std::cout << '\n';
    });
}

输出:

0 1 2 3
4 5 6 7
8 9