Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
std::ranges::chunk_view
Member functions
chunk_view::chunk_view
Classes for input_range s
Deduction guides
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