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 > ;
(seit C++23)

Gibt das Element an der angegebenen relativen Position zurück, nach der Transformation.

Entspricht

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

wobei * parent_ - > fun_ die Transformationsfunktion vom Typ F ist, die im übergeordneten ranges::zip_transform_view gespeichert ist, und current_ das zugrundeliegende Tupel von Iteratoren in Views... darstellt.

Inhaltsverzeichnis

Parameter

n - Position relativ zum aktuellen Standort.

Rückgabewert

Das Element, das das Ergebnis der Transformation (Abbildung) ist.

Hinweise

Das Verhalten ist undefiniert, wenn der parent_ Zeiger auf das übergeordnete ranges::zip_transform_view null ist (z.B. wenn * this standardkonstruiert wurde).

Beispiel