Namespaces
Variants

std::ranges::elements_view<V,N>:: iterator

From cppreference.net
Ranges library
Range adaptors
template < bool Const >
class /*iterator*/ ;
( solo para exposición* )

El tipo de retorno de elements_view::begin , y de elements_view::end cuando la vista subyacente es un common_range .

El tipo /*iterator*/ < true > es devuelto por las sobrecargas calificadas como const. El tipo /*iterator*/ < false > es devuelto por las sobrecargas no calificadas como const.

Contenidos

Tipos de miembros

Tipo de miembro Definición
Base (privado) const V si Const es true , de lo contrario V .
( tipo de miembro solo para exposición* )
iterator_concept Denota:
iterator_category
(condicionalmente presente)
No definido, si Base no modela forward_range . De lo contrario,
value_type std:: remove_cvref_t < std:: tuple_element_t < N, ranges:: range_value_t < Base >>>
difference_type ranges:: range_difference_t < Base >

Miembros de datos

Objeto miembro Definición
current_ (privado) Un iterador de tipo ranges:: iterator_t < Base > al elemento actual de la secuencia subyacente.
( objeto miembro solo para exposición* )

Funciones miembro

construye un iterador
(función miembro pública)
devuelve el iterador subyacente
(función miembro pública)
accede al N th elemento de la tupla
(función miembro pública)
accede a un elemento por índice
(función miembro pública)
avanza o decrementa el iterador subyacente
(función miembro pública)

Funciones no miembro

compara los iteradores subyacentes
(función)
realiza operaciones aritméticas de iteradores
(función)

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.

DR Aplicado a Comportamiento publicado Comportamiento correcto
P2259R1 C++20 el miembro iterator_category siempre está definido definido solo si Base modela forward_range
LWG 3555 C++20 la definición de iterator_concept ignora const modificado para considerar

Véase también

(C++20)
el tipo de retorno de ranges::transform_view::begin , y de ranges::transform_view::end cuando la vista subyacente es un common_range
(clase plantilla miembro privada)