Spec-Zone.ru › C++

std::ranges::zip_view<Views...>::iterator

template< bool Const >
class /*iterator*/;
(только для иллюстрации*)

Тип итератора, возможно константного zip_view, возвращаемый функцией zip_view::begin и в некоторых случаях функцией zip_view::end.

Тип /*iterator*/<true> или /*iterator*/<false> рассматривает базовые представления соответственно как константные или неконстантные.

Типы-члены

Член Определение
iterator_concept
  • std::random_access_iterator_tag, если all-random-access<Const,Views...> является true, иначе
  • std::bidirectional_iterator_tag, если all-bidirectional<Const,Views...> является true, иначе
  • std::forward_iterator_tag, если all-forward<Const,Views...> является true, иначе
  • std::input_iterator_tag.
iterator_category
(присутствует условно)
  • std::input_iterator_tag, если all-forward<Const,Views...> является true,
  • иначе не определён.
value_type
  • std::tuple<ranges::range_value_t<Views>...>, если Const является false,
  • std::tuple<ranges::range_value_t<const Views>...> в противном случае.
difference_type
  • std::common_type_t<ranges::range_difference_t<Views>...>, если Const является false,
  • std::common_type_t<ranges::range_difference_t<const Views>...> в противном случае.

Члены-данные

Член Определение
current_ (закрытый)
  • std::tuple<ranges::iterator_t<Views>...>, если Const является false, или
  • std::tuple<ranges::iterator_t<const Views>...> в противном случае.
    (объект-член только для иллюстрации*)

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

(конструктор)
создаёт итератор
(открытая функция-член)
operator*
получает значение, подобное кортежу и состоящее из базовых элементов, на которые указывают итераторы
(открытая функция-член)
operator[]
получает значение, подобное кортежу и состоящее из базовых элементов со смещением
(открытая функция-член)
operator++operator++(int)operator--operator--(int)operator+=operator-=
перемещает базовые итераторы вперёд или назад
(открытая функция-член)

Функции вне класса

operator==operator<operator>operator<=operator>=operator<=>
(C++23)
сравнивает базовые итераторы
(функция)
operator+operator-
(C++23)
выполняет арифметические операции над базовыми итераторами
(функция)
iter_move
(C++23)
получает значение, подобное кортежу, обозначающее базовые элементы, на которые указывают итераторы и которые будут перемещены
(функция)
iter_swap
(C++23)
меняет местами базовые элементы, на которые указывают итераторы
(функция)

Пример

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

Spec-Zone.ru

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