std::ranges::slide_view<V>:: begin
|
Range primitives | |||||||
|
Range concepts | |||||||||||||||||||
|
Range factories | |||||||||
|
Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
Helper items | |||||||||||||||||
|
|
Member functions | ||||
slide_view::begin
|
||||
Deduction guides | ||||
Iterator | ||||
Member functions | ||||
Non-member functions | ||||
Sentinel | ||||
Member functions | ||||
Non-member functions | ||||
constexpr
auto
begin
(
)
requires ( ! ( /*simple-view*/ < V > && /*slide-caches-nothing*/ < const V > ) ) ; |
(1) | (since C++23) |
constexpr
auto
begin
(
)
const
requires /*slide-caches-nothing*/ < const V > ; |
(2) | (since C++23) |
Returns an iterator to the first element of the
slide_view
.
slide-caches-first
, equivalent to:
return
iterator
<
false
>
(
ranges::
begin
(
base_
)
,
ranges::
next
(
ranges::
begin
(
base_
)
, n_
-
1
,
ranges::
end
(
base_
)
)
,
n_
)
;
slide-caches-first
this function caches the result within the
cached_begin_
for use on subsequent calls. This is necessary to provide the amortized constant-time complexity required by the
range
.
Parameters
(none)
Return value
An
iterator
to the first element of
slide_view
, which points to the
n_
-sized subrange of the possibly const-qualified underlying view type –
V
for overload
(
1
)
or
const
V
for overload
(
2
)
.
Example
#include <iostream> #include <ranges> #include <string_view> using namespace std::literals; int main() { static constexpr auto source = {"∀x"sv, "∃y"sv, "ε"sv, "δ"sv}; auto view{std::ranges::slide_view(source, 2)}; const auto subrange{*(view.begin())}; for (std::string_view const s : subrange) std::cout << s << ' '; std::cout << '\n'; }
Output:
∀x ∃y
See also
returns an iterator or a sentinel to the end
(public member function) |
|
(C++23)
|
compares a sentinel with an iterator returned from
slide_view::begin
(function) |