W3cubDocs

/C++

std::ranges::chunk_view<V>::iterator

template< bool Const >
class /*iterator*/
(since C++23)

The return type of chunk_view::begin, and of chunk_view::end when the underlying view V is a common_range.

Used only if V models forward_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.

Data members

Typical implementations of /*iterator*/ hold four non-static data members:

These names are for exposition only.

Member types

Member type Definition
Parent (private) const chunk_view if Const is true, otherwise chunk_view. The name is for exposition only.
Base (private) const V if Const is true, otherwise V. The name is for exposition only.
iterator_category std::input_iterator_tag
iterator_concept
value_type decltype(views::take(ranges::subrange(current_, end_), n_));.
difference_type ranges::range_difference_t<Base>

Member functions

(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)

Non-member functions

(C++23)
compares the underlying iterators
(function)
(C++23)
performs iterator arithmetic
(function)

Example

References

  • C++23 standard (ISO/IEC 14882:2023):
    • 26.7.28.7 Class template chunk_view::iterator for forward ranges [range.chunk.fwd.iter]

See also

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/chunk_view/iterator