Namespaces
Variants

std::common_type<tuple-like>

De es.cppreference.net
 
 
Biblioteca de utilidades
Soporte del lenguaje
Soporte de tipos (tipos básicos, RTTI)
Macros de prueba de características de la biblioteca (C++20)
Utilidades del programa
Funciones variádicas
Soporte de corrutinas (C++20)
Soporte de contratos (C++26)
Comparación a tres vías
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilidades generales
Operadores relacionales (obsoleto en C++20)
 
 
Definido en el encabezado <tuple>
template< tuple-like TTuple, tuple-like UTuple >
    requires /* see below */
struct common_type<TTuple, UTuple>;
(desde C++23)

El tipo común de dos tipos tuple-like es un std::tuple que consiste en los tipos comunes de todos los pares de tipos de elementos correspondientes de ambos tipos.

Dados

  • TTypes como el paquete formado por la secuencia de std::tuple_element_t<i, TTuple> para cada entero i en [​0, std::tuple_size_v<TTuple>), y
  • UTypes como el paquete formado por la secuencia de std::tuple_element_t<i, UTuple> para cada entero i en [​0, std::tuple_size_v<UTuple>),

se deben satisfacer las siguientes restricciones:

  • TTuple o UTuple es una especialización de std::tuple.
  • std::is_same_v<TTuple, std::decay_t<TTuple>> es true.
  • std::is_same_v<UTuple, std::decay_t<UTuple>> es true.
  • std::tuple_size_v<TTuple> es igual a std::tuple_size_v<UTuple> (TTuple y UTuple tienen el mismo número de elementos).
  • std::tuple<std::common_type_t<TTypes, UTypes>...> denota un tipo.

Tipos de miembros

Tipo de miembro Definición
type std:: tuple < std:: common_type_t < TTypes, UTypes > ... >

Ejemplo

Véase también

determina el tipo común de un grupo de tipos
(plantilla de clase)
determina el tipo común de dos pair s
(especialización de plantilla de clase)