std:: common_type < tuple-like >
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::tuple
| Member functions | ||||
| Non-member functions | ||||
|
(until C++20)
(until C++20)
(until C++20)
(until C++20)
(until C++20)
(C++20)
|
||||
| Helper concepts | ||||
|
(C++23)
|
||||
| Helper classes | ||||
|
common_type
<std::tuple>
(C++23)
|
||||
|
(C++23)
|
||||
| Deduction guides (C++17) |
|
定義済みヘッダー
<tuple>
|
||
|
template
<
tuple-like TTuple, tuple-like UTuple
>
requires
/* see below */
|
(C++23以降) | |
2つの
tuple-like
型の共通型は、両方の型の対応するすべての要素型ペアの共通型から構成される
std::tuple
です。
与えられた
-
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 > のシーケンスによって形成されるパックとして定義します。
以下の制約を満たす必要があります:
-
TTupleまたはUTupleは std::tuple の特殊化です。 - std:: is_same_v < TTuple, std:: decay_t < TTuple >> は true です。
- std:: is_same_v < UTuple, std:: decay_t < UTuple >> は true です。
-
std::
tuple_size_v
<
TTuple
>
は
std::
tuple_size_v
<
UTuple
>
と等しい(
TTupleとUTupleは同じ数の要素を持ちます)。 - std:: tuple < std:: common_type_t < TTypes, UTypes > ... > は型を表します。
メンバー型
| メンバー型 | 定義 |
type
|
std:: tuple < std:: common_type_t < TTypes, UTypes > ... > |
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
|
(C++11)
|
型のグループの共通型を決定する
(クラステンプレート) |
|
(C++23)
|
2つの
pair
の共通型を決定する
(クラステンプレートの特殊化) |