Namespaces
Variants

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

С сайта ru.cppreference.net
 
 
Библиотека диапазонов
Адаптеры диапазонов
 
 
constexpr decltype(auto) operator*() const
    noexcept(/* see description */);
(начиная с C++23)

Возвращает преобразованный элемент, полученный применением вызываемого объекта типа FF к лежащим в основе разыменованным элементам.

Эквивалентно

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

где *parent_->fun_ — это функция преобразования, хранящаяся в родительском ranges::zip_transform_view, а current_ — это лежащий в основе кортеж итераторов на Views....

Параметры

(нет)

Возвращаемое значение

Элемент, который является результатом преобразования (отображения).

Исключения

noexcept спецификация:
noexcept ( std:: invoke ( * parent_ - > fun_, * std :: get < INTS > ( inner_. current_ ) ... ) )
где INTS представляет собой набор целых чисел 0, 1, ..., (sizeof...(Views)-1) .

Примечания

operator - > не предоставлен.

Поведение не определено, если parent_ указатель на родительский ranges::zip_transform_view является нулевым (например, если * this создан конструктором по умолчанию).

Пример