template< bool Const > class /*iterator*/ | (since C++23) |
The return type of stride_view::begin
, and of stride_view::end
when the underlying view V
is a common_range
.
The type /*iterator*/<true>
is returned by the const-qualified overloads. The type /*iterator*/<false>
is returned by the non-const-qualified overloads.
The name of this class template (shown here as /*iterator*/
) is unspecified.
Typical implementations of /*iterator*/
hold four non-static data members:
current_
of type ranges::iterator_t<Base>
, that holds an iterator to the current element, end_
of type ranges::sentinel_t<Base>
, that holds a sentinel to the end, stride_
of type ranges::range_difference_t<Base>
, that holds the stride value, missing_
of type ranges::range_difference_t<Base>
, that usually holds the result of ranges::advance(current_, stride_, end_)
. These names are for exposition only.
Member type | Definition |
---|---|
Parent (private) | const ranges::stride_view if Const is true , otherwise ranges::stride_view . The name is for exposition only. |
Base (private) | const V if Const is true , otherwise V . The name is for exposition only. |
difference_type | ranges::range_difference_t<Base> |
value_type | ranges::range_value_t<Base> |
iterator_concept |
|
iterator_category | Defined if and only if Base models forward_range .Let
|
(C++23) | constructs an iterator (public member function) |
(C++23) | returns an iterator to current element (public member function) |
(C++23) | accesses the element (public member function) |
(C++23) | accesses an element by index (public member function) |
(C++23) | advances or decrements the underlying iterator (public member function) |
(C++23) | compares the underlying iterators (function) |
(C++23) | performs iterator arithmetic (function) |
(C++23) | casts the result of dereferencing the underlying iterator to its associated rvalue reference type (function) |
(C++23) | swaps underlying pointed-to elements (function) |
stride_view::iterator
[range.stride.iterator]
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/stride_view/iterator