std::ranges::enumerate_view::iterator - cppreference.com (original) (raw)

| template< bool Const > class /*iterator*/ | | (since C++23) (exposition only*) | | -------------------------------------------- | | --------------------------------- |

The return type of enumerate_view::begin, and of enumerate_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.

Contents

[edit] Member types

Member type Definition
Base (private) const V if Const is true, otherwise V.(exposition-only member type*)
iterator_category std::input_iterator_tag
iterator_concept std::random_access_iterator_tag, if Base models random_access_range. Otherwise, std::bidirectional_iterator_tag, if Base models bidirectional_range. Otherwise, std::forward_iterator_tag, if Base models forward_range. Otherwise, std::input_iterator_tag.
difference_type ranges::range_difference_t<Base>
value_type std::tuple<difference_type, ranges::range_value_t<Base>>
reference-type (private) std::tuple<difference_type, ranges::range_reference_t<Base>>(exposition-only member type*)

[edit] Data members

Member name Definition
current_ (private) An iterator to the current element of type ranges::iterator_t<Base>(exposition-only member object*)
pos_ (private) A current index of type difference_type(exposition-only member object*)

[edit] Member functions

(constructor) constructs an iterator (public member function)
base returns an iterator to current element (public member function)
index returns current index (public member function)
operator* accesses the element (public member function)
operator[] accesses an element by index (public member function)
operator++operator++(int)operator--operator--(int)operator+=operator-= advances or decrements the underlying iterator (public member function) [edit]

[edit] Non-member functions

| | compares the underlying iterators (function) | | --------------------------------------------------------------------------------------------------------------- | | | performs iterator arithmetic (function) | | | casts the result of dereferencing the underlying iterator to its associated rvalue reference type (function) |

[edit] Example

[edit] References