std::ranges::views::adjacent, std::ranges::adjacent_view, std::ranges::views::pairwise

来自cppreference.com
< cpp‎ | ranges
 
 
范围库
范围适配器
adjacent_viewviews::adjacent
(C++23)(C++23)
views::pairwise
(C++23)

 
 
在标头 <ranges> 定义
template< ranges::forward_range V, std::size_t N >

    requires ranges::view<V> && (N > 0)
class adjacent_view

    : public ranges::view_interface<adjacent_view<V, N>>
(1) (C++23 起)
namespace views {

    template< std::size_t N >
    constexpr /* 未指明 */ adjacent = /* 未指明 */ ;

}
(2) (C++23 起)
namespace views {

    inline constexpr auto pairwise = adjacent<2>;

}
(3) (C++23 起)
调用签名
template< ranges::viewable_range R >

    requires /* 见下文 */

constexpr ranges::view auto adjacent<N>( R&& r );
(C++23 起)
1) adjacent_view 是接受一个 view 的范围适配器。其产生的 view 的第 i 个元素(“窗口”)为一个