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
C++23 standard (ISO/IEC 14882:2024):
26.7.23.3 Class template
enumerate_view::iterator[range.enumerate.iterator]