std::ranges::slide_view<V>:: slide_view
From cppreference.net
<
cpp
|
ranges
|
slide view
C++
Ranges library
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
std::ranges::slide_view
| Member functions | ||||
|
slide_view::slide_view
|
||||
|
(C++26)
|
||||
| Deduction guides | ||||
| Iterator | ||||
| Member functions | ||||
| Non-member functions | ||||
| Sentinel | ||||
| Member functions | ||||
| Non-member functions | ||||
|
constexpr
explicit
slide_view
(
V base,
ranges::
range_difference_t
<
V
>
n
)
;
|
(начиная с C++23) | |
Создает
slide_view
инициализируя базовые элементы данных:
-
переместить конструкцию базового представления
base_с помощью std :: move ( base ) , -
"размер окна"
n_с помощью n .
Параметры
| base | - | исходное представление |
| n | - | размер "скользящего окна" |
Пример
Запустить этот код
#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"; }); }
Вывод:
[1 2 3] [2 3 4]