Spec-Zone.ru › C++

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

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

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

Присутствует только если V соответствует forward_range.

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

Типы элементов

Тип элемента Определение
Parent (private) const chunk_view если Const является true, иначе chunk_view.
(exposition-only member type*)
Base (private) const V если Const является true, иначе V.
(exposition-only member type*)
iterator_category std::input_iterator_tag
iterator_concept
  • std::random_access_iterator_tag, если Base соответствует random_access_range. Иначе,
  • std::bidirectional_iterator_tag, если Base соответствует bidirectional_range. Иначе,
  • std::forward_iterator_tag.
value_type decltype(views::take(ranges::subrange(current_, end_), n_));.
difference_type ranges::range_difference_t<Base>

Члены данных

Объект члена Определение
current_ (private) ranges::iterator_t<Base>, хранит итератор на первый элемент текущего фрагмента в базовом массиве (т.е. начало фрагмента).
(exposition-only member object*)
end_ (private) ranges::sentinel_t<Base>, хранит конечную точку базового массива.
(exposition-only member object*)
n_ (private) ranges::range_difference_t<Base>, хранит начальное количество элементов во фрагменте (последний фрагмент может быть меньше).
(exposition-only member object*)
missing_ (private) ranges::range_difference_t<Base>, обычно равно ranges::advance(current_, n_, end_);.
(exposition-only member object*)

Члены-функции

(constructor)
(C++23)
конструирует итератор
(public member function)
base
(C++23)
возвращает итератор на текущий элемент
(public member function)
operator*
(C++23)
доступ к элементу
(public member function)
operator[]
(C++23)
доступ к элементу по индексу
(public member function)
operator++operator++(int)operator--operator--(int)operator+=operator-=
(C++23)
продвигает или уменьшает базовую итерацию
(public member function)

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

operator==operator<operator>operator<=operator>=operator<=>
(C++23)
сравнивает базовые итераторы
(функция)
operator+operator-
(C++23)
выполняет арифметические операции с итераторами
(функция)

Пример

Ссылки

  • Стандарт C++23 (ISO/IEC 14882:2023):
    • 26.7.28.7 Класс-шаблон chunk_view::iterator для направленных диапазонов [range.chunk.fwd.iter]

См. также

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API