std::ranges::stride_view<V>::base - cppreference.com

From cppreference.com

constexprVbase()const&requiresstd::copy_constructible<V>; (1) (since C++23)constexprVbase()&&; (2) (since C++23)1) Copy constructs the result from the underlying view. Equivalent to return

base_

;.

2) Move constructs the result from the underlying view. Equivalent to returnstd::

move

(

base_

);.

Return value

A copy of the underlying view.

Example

Run this code

#include<algorithm>#include<iostream>#include<ranges>voidprint(std::ranges::viewable_rangeauto&&v){std::ranges::for_each(v,[](autox){std::cout<<' '<<x;}).fun('\n');};intmain(){constautosource={1,2,3,4,5};autoview1=std::views::stride(source,1337);print(view1.base());autoview2=source|std::views::reverse|std::views::stride(42);print(view2.base());}Output:

1 2 3 4 5 5 4 3 2 1