Namespaces
Variants

std::ranges::stride_view<V>:: end

From cppreference.net
Ranges library
Range adaptors
constexpr auto end ( ) requires ( ! /*simple-view*/ < V > ) ;
(1) (desde C++23)
constexpr auto end ( ) const requires ranges:: range < const V >
(2) (desde C++23)

Devuelve un iterator o un sentinel que representa el final del stride_view .

Sea base_ y stride_ los miembros de datos subyacentes.

1) Sea Const definido como using Const = false ; y Base como using Base = V ; .
2) Sea Const definido como using Const = true ; y Base como using Base = const V ; .

Equivalente a:

if constexpr (ranges::common_range<Base> &&
              ranges::sized_range<Base> &&
              ranges::forward_range<Base>)
{
    auto missing = (stride_ - ranges::distance(base_) % stride_) % stride_;
    return iterator<Const>(this, ranges::end(base_), missing);
}
else if constexpr (ranges::common_range<Base> &&
                   !ranges::bidirectional_range<Base>)
{
    return iterator<Const>(this, ranges::end(base_));
}
else
{
    return std::default_sentinel;
}

Contenidos

Parámetros

(ninguno)

Valor de retorno

Un iterador al elemento siguiente al último elemento, si la vista subyacente V modela common_range . De lo contrario, el std::default_sentinel que se compara igual al iterador final.

Notas

stride_view < V > modela common_range siempre que la vista subyacente V lo haga.

Ejemplo

Véase también

devuelve un iterador al inicio
(función miembro pública)
devuelve un centinela que indica el final de un rango
(objeto de punto de personalización)