std::ranges::cartesian_product_view<First, Vs...>:: iterator
From cppreference.net
<
cpp
|
ranges
|
cartesian product view
|
template
<
bool
Const
>
class /*iterator*/ |
(C++23以降)
( 説明専用* ) |
|
cartesian_product_view::begin
の戻り値の型、および基となるビュー
V
が
common_range
である場合の
cartesian_product_view::end
の戻り値の型。
型 /*iterator*/ < true > はconst修飾されたオーバーロードによって返されます。型 /*iterator*/ < false > は非const修飾されたオーバーロードによって返されます。
目次 |
メンバー型
| メンバー | 定義 |
Parent
(private)
|
maybe-const
<
Const,
ranges::
cartesian_product_view
>>
( 説明専用メンバー型* ) |
iterator_category
|
std:: input_iterator_tag |
iterator_concept
|
|
value_type
|
std::
tuple
<
ranges::
range_value_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: range_value_t < /*maybe-const*/ < Const, Vs >> ... > ; |
reference
|
std::
tuple
<
ranges::
range_reference_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: range_reference_t < /*maybe-const*/ < Const, Vs >> ... > ; |
difference_type
|
実装定義の 符号付き整数様 型(おそらくそのような型の中で最小のもの)、すべての基になる範囲の最大サイズの積を格納するのに十分な幅を持つ(そのような型が存在する場合)。 |
データメンバ
| メンバー | 定義 |
Parent*
parent_
(非公開)
|
親オブジェクトへのポインタ
cartesian_product_view
( 説明専用メンバーオブジェクト* ) |
current_
(非公開)
|
現在の基盤要素へのイテレータのタプル、型は
std::
tuple
<
ranges::
iterator_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: iterator_t < /*maybe-const*/ < Const, Vs >> ... > ( 説明専用メンバーオブジェクト* ) |
メンバー関数
|
イテレータを構築する
(public member function) |
|
|
要素にアクセスする
(public member function) |
|
|
インデックスによる要素へのアクセス
(public member function) |
|
|
基盤となるイテレータを進めるまたは戻す
(public member function) |
|
|
イテレータを進める
( 説明専用メンバ関数* ) |
|
|
イテレータを戻す
( 説明専用メンバ関数* ) |
|
|
2つのイテレータ間の距離を返す
( 説明専用メンバ関数* ) |
非メンバー関数
|
(C++23)
|
基底となるイテレータを比較する
(関数) |
|
(C++23)
|
イテレータ演算を実行する
(関数) |
|
(C++23)
|
基底イテレータのデリファレンス結果を関連する右辺値参照型にキャストする
(関数) |
|
(C++23)
|
基底となる指し示された要素を交換する
(関数) |
例
|
このセクションは不完全です
理由: 例がありません |
参考文献
- C++23規格 (ISO/IEC 14882:2024):
-
-
26.7.32.3 クラステンプレート
cartesian_product_view::iterator[range.cartesian.iterator]
-
26.7.32.3 クラステンプレート