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) |
|
Défini dans l'en-tête
<tuple>
|
||
|
template
<
tuple
-
like TTuple, tuple
-
like UTuple
>
requires
/* voir ci-dessous */
|
(depuis C++23) | |
Le type commun de deux
tuple-like
est un
std::tuple
constitué des types communs de toutes les paires de types d'éléments correspondants des deux types.
Étant donné
-
TTypescomme le pack formé par la séquence de std:: tuple_element_t < i, TTuple > pour chaque entier i dans[ 0,std:: tuple_size_v < TTuple >), et -
UTypescomme le pack formé par la séquence de std:: tuple_element_t < i, UTuple > pour chaque entier i dans[ 0,std:: tuple_size_v < UTuple >),
les contraintes suivantes doivent être satisfaites :
-
TTupleouUTupleest une spécialisation de std::tuple . - std:: is_same_v < TTuple, std:: decay_t < TTuple >> est true .
- std:: is_same_v < UTuple, std:: decay_t < UTuple >> est true .
-
std::
tuple_size_v
<
TTuple
>
est égal à
std::
tuple_size_v
<
UTuple
>
(
TTupleetUTupleont le même nombre d'éléments). - std:: tuple < std:: common_type_t < TTypes, UTypes > ... > désigne un type.
Types membres
| Type de membre | Définition |
type
|
std:: tuple < std:: common_type_t < TTypes, UTypes > ... > |
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
(C++11)
|
détermine le type commun d'un groupe de types
(modèle de classe) |
|
(C++23)
|
détermine le type commun de deux
pair
s
(spécialisation de modèle de classe) |