std:: partial_order
|
Definido en el encabezado
<compare>
|
||
|
inline
namespace
/* no especificado */
{
inline
constexpr
/* no especificado */
partial_order
=
/* no especificado */
;
|
(desde C++20) | |
|
Firma de llamada
|
||
|
template
<
class
T,
class
U
>
requires
/* ver más abajo */
|
||
Compara dos valores usando comparación de 3 vías y produce un resultado de tipo
std::partial_ordering
.
Sean
t
y
u
expresiones y
T
y
U
denotan
decltype
(
(
t
)
)
y
decltype
(
(
u
)
)
respectivamente,
std
::
partial_order
(
t, u
)
es
equivalente-expresión
a:
-
Si
std::
is_same_v
<
std::
decay_t
<
T
>
,
std::
decay_t
<
U
>>
es
true
:
-
std::
partial_ordering
(
partial_order
(
t, u
)
)
, si es una expresión bien formada con resolución de sobrecarga realizada en un contexto que no incluye una declaración de
std::partial_order, - en caso contrario, std:: partial_ordering ( std:: compare_three_way ( ) ( t, u ) ) , si está bien formada,
- en caso contrario, std:: partial_ordering ( std:: weak_order ( t, u ) ) , si está bien formada.
-
std::
partial_ordering
(
partial_order
(
t, u
)
)
, si es una expresión bien formada con resolución de sobrecarga realizada en un contexto que no incluye una declaración de
- En todos los demás casos, la expresión está mal formada, lo que puede resultar en fallo de sustitución cuando aparece en el contexto inmediato de una instanciación de plantilla.
Objetos de punto de personalización
El nombre
std::partial_order
denota un
objeto de punto de personalización
, que es un
objeto función
constante de un tipo de clase
literal
semiregular
. Consulte
CustomizationPointObject
para más detalles.
Ejemplo
|
Esta sección está incompleta
Razón: sin ejemplo |
Véase también
|
(C++20)
|
el tipo de resultado de la comparación de 3 vías que admite los 6 operadores, no es sustituible y permite valores incomparables
(clase) |
|
(C++20)
|
realiza una comparación de 3 vías y produce un resultado de tipo
std::strong_ordering
(objeto de punto de personalización) |
|
(C++20)
|
realiza una comparación de 3 vías y produce un resultado de tipo
std::weak_ordering
(objeto de punto de personalización) |
|
(C++20)
|
realiza una comparación de 3 vías y produce un resultado de tipo
std::partial_ordering
, incluso si
operator
<=>
no está disponible
(objeto de punto de personalización) |