Namespaces
Variants

std::basic_common_reference<tuple-like>

Depuis fr.cppreference.net
 
 
Bibliothèque d'utilitaires
Support linguistique
Support de type (types de base, RTTI)
Macros de test de fonctionnalités de la bibliothèque (C++20)
Utilitaires de programme
Fonctions variadiques
Support des coroutines (C++20)
Support des contrats (C++26)
Comparaison à trois voies
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilitaires généraux
Opérateurs relationnels (obsolète en C++20)
 
 
Défini dans l'en-tête <tuple>
template< tuple-like TTuple, tuple-like UTuple,
          template<class> class TQual, template<class> class UQual >
    requires /* see below */
struct basic_common_reference<TTuple, UTuple, TQual, UQual>;
(depuis C++23)

Le type de référence commune de deux tuple-like types est un std::tuple qui consiste en les types de référence commune de toutes les paires d'éléments correspondantes des deux types, où les qualificateurs cv et de référence sur les types tuple-like sont appliqués à leurs types d'éléments.

Étant donné

  • TTypes comme le paquet formé par la séquence de std::tuple_element_t<i, TTuple> pour chaque entier i dans [0std::tuple_size_v<TTuple>), et
  • UTypes comme le paquet formé par la séquence de std::tuple_element_t<i, UTuple> pour chaque entier i dans [0std::tuple_size_v<UTuple>),

les contraintes suivantes doivent être satisfaites :

  • TTuple ou UTuple est une std::tuple spécialisation.
  • 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> (TTuple et UTuple ont le même nombre d'éléments).
  • std::tuple<std::common_reference_t<TQual<TTypes>..., UQual<UTypes>>...> désigne un type.

Types membres

Type de membre Définition
type std:: tuple < std:: common_reference_t < TQual < TTypes > ..., UQual < UTypes >> ... >

Exemple

Voir aussi

détermine le type de référence commun d'un groupe de types
(modèle de classe)
détermine le type de référence commun de deux pair s
(spécialisation de modèle de classe)