Namespaces
Variants

std:: common_with

From cppreference.net
Definido en el encabezado <concepts>
(desde C++20)

El concepto common_with<T, U> especifica que dos tipos T y U comparten un tipo común (calculado por std::common_type_t ) al cual ambos pueden ser convertidos.

Contenidos

Requisitos semánticos

T y U modelan std :: common_with < T, U > solo si, dadas expresiones que preservan la igualdad t1 , t2 , u1 y u2 tales que decltype ( ( t1 ) ) y decltype ( ( t2 ) ) son ambos T y decltype ( ( u1 ) ) y decltype ( ( u2 ) ) son ambos U ,

En otras palabras, la conversión al tipo común debe preservar la igualdad .

Preservación de la igualdad

Las expresiones declaradas en las requires expressions de los conceptos de la biblioteca estándar deben ser equality-preserving (excepto cuando se indique lo contrario).

Referencias

  • Estándar C++23 (ISO/IEC 14882:2024):
  • 18.4.6 Concepto common_with [concept.common]
  • Estándar C++20 (ISO/IEC 14882:2020):
  • 18.4.6 Concepto common_with [concept.common]

Véase también

determina el tipo común de un grupo de tipos
(plantilla de clase)
determina el tipo de referencia común de un grupo de tipos
(plantilla de clase)
especifica que dos tipos comparten un tipo de referencia común
(concepto)