組み合わせ
このセクションのメンバー関数は、呼び出し側スレッドでコンテナー全体を順番に反復処理します。
- template<typename BinaryFunc>
T combine(BinaryFunc f) 要件:
BinaryFunc
タイプは、[function.objects] ISO C++ 標準の関数オブジェクトの要件を満たしている必要があります。具体的には、タイプはシグネチャーT BinaryFunc(T,T)
またはT BinaryFunc(const T&,const T&)
である必要があります。T
タイプは、enumerable_thread_specific
オブジェクトに対応するテンプレート・パラメーターと同一である必要があります。効果: 二項ファンクター
f
を使用して、すべての要素のリダクションを計算します。要素が存在しない場合、スレッドローカル要素を作成する場合と同じ規則によって結果を作成します。戻り値: リダクションの結果を返します。
- template<typename UnaryFunc>
void combine_each(UnaryFunc f) 要件:
UnaryFunc
タイプは、[function.objects] ISO C++ 標準の関数オブジェクトの要件を満たしている必要があります。具体的には、タイプは次のいずれかのシグネチャーを持つ単項ファンクターである必要があります。void UnaryFunc(T)
、void UnaryFunc(T&)
、またはvoid UnaryFunc(const T&)
AT
タイプは、enumerable_thread_specific
オブジェクトに対応するテンプレート・パラメーターと同一である必要があります。効果:
*this
内のT
の各インスタンスx
についてf(x)
を評価します。