Namespaces
Variants

std::ranges::enumerate_view<V>:: iterator

From cppreference.net
Ranges library
Range adaptors
template < bool Const >
class /*iterator*/
(начиная с C++23)
( только для демонстрации* )

Тип возвращаемого значения enumerate_view::begin , а также enumerate_view::end , когда базовое представление V является common_range .

Тип /*iterator*/ < true > возвращается перегруженными версиями с квалификатором const. Тип /*iterator*/ < false > возвращается перегруженными версиями без квалификатора const.

Содержание

Типы членов

Тип члена Определение
Base (private) const V если Const равен true , иначе V .
( только демонстрационный тип члена* )
iterator_category std::input_iterator_tag
iterator_concept
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 >>
( только демонстрационный тип члена* )

Члены данных

Название члена Определение
current_ (private) Итератор на текущий элемент типа ranges:: iterator_t < Base >
( объект-член только для демонстрации* )
pos_ (private) Текущий индекс типа difference_type
( объект-член только для демонстрации* )

Функции-члены

создает итератор
(public member function)
возвращает итератор на текущий элемент
(public member function)
возвращает текущий индекс
(public member function)
обращается к элементу
(public member function)
обращается к элементу по индексу
(public member function)
перемещает или уменьшает базовый итератор
(public member function)

Функции, не являющиеся членами класса

сравнивает базовые итераторы
(функция)
выполняет арифметические операции с итераторами
(функция)
(C++23)
преобразует результат разыменования базового итератора в соответствующий тип rvalue-ссылки
(функция)

Пример

Ссылки

  • Стандарт C++23 (ISO/IEC 14882:2024):
  • 26.7.23.3 Шаблон класса enumerate_view::iterator [range.enumerate.iterator]