Namespaces
Variants

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

Von de.cppreference.net
 
 
Ranges-Bibliothek
Range-Adaptoren
 
 
constexpr decltype(auto) operator*() const
    noexcept(/* see description */);
(seit C++23)

Gibt das transformierte Element zurück, das durch Anwendung des aufrufbaren Objekts vom Typ F auf die zugrundeliegenden dereferenzierten Elemente erhalten wird.

Äquivalent zu

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

wobei *parent_->fun_ die im übergeordneten ranges::zip_transform_view gespeicherte Transformationsfunktion ist und current_ das zugrundeliegende Tupel von Iteratoren in Views... ist.

Parameter

(keine)

Rückgabewert

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

Exceptions

noexcept Spezifikation:
noexcept ( std:: invoke ( * parent_ - > fun_, * std :: get < INTS > ( inner_. current_ ) ... ) )
wobei INTS das Paket der Ganzzahlen 0, 1, ..., (sizeof...(Views)-1) ist.

Hinweise

operator - > ist nicht bereitgestellt.

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

Beispiel