Namespaces
Variants

std::ranges::zip_transform_view<F,Views...>:: iterator <Const>:: operator[]

From cppreference.net
Ranges library
Range adaptors
constexpr decltype ( auto ) operator [ ] ( difference_type n ) const
requires ranges:: random_access_range < Base > ;
(desde C++23)

Devuelve el elemento en la ubicación relativa especificada, después de la transformación.

Equivalente a

return
    std::apply
    (
        [&]<class... Is>(const Is&... iters) -> decltype(auto)
        {
            return std::invoke(*parent_->fun_, iters[std::iter_difference_t<Is>(n)]...);
        },
        inner_.current_
    );

donde * parent_ - > fun_ es la función de transformación de tipo F almacenada en el padre ranges::zip_transform_view , y current_ es la tupla subyacente de iteradores hacia Views... .

Contenidos

Parámetros

n - posición relativa a la ubicación actual.

Valor de retorno

El elemento que es el resultado de la transformación (mapeo).

Notas

El comportamiento es indefinido si el parent_ puntero al padre ranges::zip_transform_view es nulo (por ejemplo, si * this está construido por defecto).

Ejemplo