Namespaces
Variants

std::ranges::transform_view<V,F>::iterator<Const>::iterator

ja.cppreference.net より
 
 
レンジライブラリ
レンジアダプタ
 
 
/*iterator*/()
    requires std::default_initializable<ranges::iterator_t<Base>> = default;
(1) (C++20以上)
constexpr /*iterator*/( Parent& parent, ranges::iterator_t<Base> current );
(2) (C++20以上)
constexpr /*iterator*/( /*iterator*/<!Const> i )
    requires Const &&
             std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>>;
(3) (C++20以上)

イテレータを構築します。

1) デフォルトコンストラクタ。 値初期化された基底イテレータ、および[nullptrで初期化] transform_viewされた親へのポインタを保持します。 nullptr。[ コメント: 原文 "initializes the pointer to parent with" の後が missing、原文の"nullptr"がプレースホルダ外にある形跡、ここでは原文通りに "with nullptr" を補完して翻訳する]
2) 基底イテレータを std::move(current) で初期化し、親へのポインタを std::addressof(parent) で初期化します。
3) /*iterator*/<false> から /*iterator*/<true> への変換。対応するメンバをムーブ構築します。

パラメータ

parent - (const修飾されている可能性のある) std::ranges::transform_view
current - (const修飾されている可能性のある) V へのイテレータ
i - /*iterator*/ < false >

例