std::ranges::zip_transform_view<F,Views...>::iterator<Const>::operator*
ja.cppreference.net から
constexpr decltype(auto) operator*() const
noexcept(/* see description */);
|
(C++23 以降) | |
基底となるポインタが指す要素に対して、型 F の呼び出し可能オブジェクトを適用することによって得られる変換後の要素を返します。
以下と同等です。
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
を指しておらず、nullである場合(例えば、
*
this
がデフォルト構築されている場合)、動作は未定義です。
例
|
このセクションは不完全です
理由: 例がありません |