名稱空間
變體
操作

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

來自 cppreference.com
 
 
範圍庫 (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_
    );

其中 *parent_->fun_ 是儲存在父 ranges::zip_transform_view 中的型別為 F 的轉換函式,且 current_ 是指向 Views... 中迭代器的底層元組。

目錄

[編輯] 引數

n - 相對於當前位置的偏移。

[編輯] 返回值

作為變換(對映)結果的元素。

[編輯] 注意

如果指向父 ranges::zip_transform_viewparent_ 指標為空(例如,如果 *this 是預設構造的),則行為是未定義的。

[編輯] 示例