Namespaces
Variants

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

От ru.cppreference.net
 
 
Библиотека диапазонов
Адаптеры диапазонов
 
std::ranges::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, инициализируя базовые члены данных:

  • конструирует перемещением base_ с std::move(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