Namespaces
Variants

std:: basic_common_reference < tuple-like >

From cppreference.net
Utilities library
定義済みヘッダー <tuple>
template < tuple-like TTuple, tuple-like UTuple,

template < class > class TQual, template < class > class UQual >
requires /* 詳細は下記参照 */

struct basic_common_reference < TTuple, UTuple, TQual, UQual > ;
(C++23以降)

2つの tuple-like 型の共通参照型は、両方の型の対応する全ての要素型ペアの共通参照型から構成される std::tuple であり、ここでtuple-like型のcv修飾子と参照修飾子はそれらの要素型に適用されます。

与えられた

  • TTypes を、すべての整数 i [ 0 , std:: tuple_size_v < TTuple > ) の範囲にある場合の std:: tuple_element_t < i, TTuple > のシーケンスから形成されるパックとして定義し、
  • UTypes を、すべての整数 i [ 0 , std:: tuple_size_v < UTuple > ) の範囲にある場合の std:: tuple_element_t < i, UTuple > のシーケンスから形成されるパックとして定義します。

以下の制約を満たす必要があります:

メンバー型

メンバー型 定義
type std:: tuple < std:: common_reference_t < TQual < TTypes > ..., UQual < UTypes >> ... >

関連項目

型のグループの共通参照型を決定する
(クラステンプレート)
2つの pair の共通参照型を決定する
(クラステンプレート特殊化)