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

指定された相対位置の要素を、変換後に返します。

次と同等

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

where * parent_ - > fun_ は親の ranges::zip_transform_view に格納されている型 F の変換関数であり、 current_ Views... に対する基盤となるイテレータのタプルである。

目次

パラメータ

n - 現在位置からの相対位置。

戻り値

変換(マッピング)の結果である要素。

注記

parent_ ポインタが親の ranges::zip_transform_view を指しておらず、nullである場合(例えば、 * this がデフォルト構築されている場合)、動作は未定義です。