Scroll to navigation

std::ranges::slide_view::slide_view(3) C++ Standard Libary std::ranges::slide_view::slide_view(3)

NAME

std::ranges::slide_view::slide_view - std::ranges::slide_view::slide_view

Synopsis


constexpr explicit slide_view( V base, ranges::range_difference_t<V> (since C++23)
n );


Constructs a slide_view initializing the underlying data members:


* move construct the underlying view base_ with std::move(base),
* the "window size" n_ with n.

Parameters


base - the source view
n - the "sliding window" size

Example

// Run this code


#include <algorithm>
#include <iostream>
#include <ranges>


int main()
{
const auto source = {1, 2, 3, 4};


auto slide = std::views::slide(source, 3);


std::ranges::for_each(slide, [](std::ranges::viewable_range auto&& w)
{
std::cout << '[' << w[0] << ' ' << w[1] << ' ' << w[2] << "]\n";
});
}

Output:


[1 2 3]
[2 3 4]

2024.06.10 http://cppreference.com