分割可能コンセプト

概要

そのインスタンスが 2 つに分割可能な型の要件。

要件

次の表は、インスタンス x を含む分割可能な型 X の要件をリストしています。

分割可能コンセプト

擬似署名

意味

X::X(X& x, Split)

xx と新しく構築されるオブジェクトに分割します。

説明

インスタンスを 2 つの部分に分割できるコンストラクター がある場合、型は分割可能です。 分割コンストラクターの引数は、オリジナル・オブジェクトへの参照と、ライブラリーによって定義される型 Split の仮引数です。 この仮引数によって、分割コンストラクターとコピー・コンストラクターが区別されます。 コンストラクターを実行した後、x および新しく構築されるオブジェクトは、オリジナルの x の 2 つのピースに相当します。 ライブラリーは 2 つのコンテキストで分割コンストラクターを使用します。

以下のモデル型の例が提供されています。

モデル型

blocked_range および blocked_range2d は分割可能な範囲を表します。 どちらの場合も、範囲を 2 つのサブ範囲へ分割します。 blocked_range の分割コンストラクターについては、「blocked_range テンプレート・クラス」セクションの例を参照してください。

parallel_reduceparallel_scan のボディーは分割可能でなければなりません。 どの場合も、同時に実行できる 2 つのボディーを生成します。

関連情報