Namespaces
Variants

std::ranges::zip_transform_view<F,Views...>::iterator

ja.cppreference.net から
 
 
範囲ライブラリ
範囲アダプタ
 
 
template< bool Const >
class /*iterator*/;
(C++23 以降)
(説明専用*)

おそらく const 修飾された zip_transform_view のイテレータ型であり、zip_transform_view::begin によって返され、特定のケースでは zip_transform_view::end によっても返されます。

型 /*iterator*/<true> または /*iterator*/<false> は、それぞれ基になるビューを const 修飾または非 const 修飾として扱います。

メンバ型

型 定義
Parent (プライベート) maybe-const <Const, zip_transform_view>
(説明専用メンバ型*)
Base (プライベート) maybe-const <Const, InnerView>
(説明専用メンバ型*)
iterator_category
(条件付きで存在)

/*POT*/ を型のパックとする。

std::iterator_traits<std::iterator_t<
    /*maybe-const*/<Const, Views>>>::iterator_category...

/*Base*/ が forward_range のモデルとなる場合、iterator_category は以下を表す:

  • std::input_iterator_tag(
    std::invoke_result_t</*maybe-const*/<Const, F>&,
        ranges::range_reference_t</*maybe-const*/<Const, Views>>...>
    
が参照でない場合)。
  • そうでなければ、
  • std::random_access_iterator_tag(
(std::derived_from</*POT*/, std::random_access_iterator_tag> && ...)が true である場合)。
  • そうでなければ、std::bidirectional_iterator_tag(
(std::derived_from</*POT*/, std::bidirectional_iterator_tag> && ...)が true である場合)。
  • そうでなければ、std::forward_iterator_tag(
(std::derived_from</*POT*/, std::forward_iterator_tag> && ...)が true である場合)。
  • そうでなければ、std::input_iterator_tag。

/*Base*/が forward_range のモデルとならない場合、存在しない。

iterator_concept /*ziperator*/<Const>::iterator_concept
value_type

/*RREF*/ を ranges::range_reference_t<Views>...、
そして /*CRREF*/ を ranges::range_reference_t<const Views>... とする。このとき:

  • std::remove_cvref_t<std::invoke_result_t<F&, /*RREF*/>>(Constが false の場合)、
  • std::remove_cvref_t<std::invoke_result_t<const F&, /*CRREF*/>>(それ以外の場合)。
difference_type range::range_difference_t</*Base*/>

データメンバ

メンバ 説明
Parent* parent_ (プライベート) 親オブジェクトへのポインタ
(説明専用メンバオブジェクト*)
ziperator<Const> inner_ (プライベート) イテレータ
(説明専用メンバオブジェクト*)

メンバー関数

イテレータを構築する
(public member function)
基となる指し示す要素に呼び出し可能オブジェクトを適用した結果を取得する
(public member function)
指定されたオフセット位置の基となる要素に呼び出し可能オブジェクトを適用した結果を取得する
(public member function)
基となるイテレータを進めるまたは戻す
(public member function)

非メンバー関数

基底となるイテレータを比較する
(関数)
基底となるイテレータに対してイテレータ演算を実行する
(関数)

例