std::experimental::ranges:: less_equal
|
Definido en el encabezado
<experimental/ranges/functional>
|
||
|
template
<
class
T
=
void
>
requires StrictTotallyOrdered
<
T
>
||
|
(ranges TS) | |
|
template
<>
struct less_equal < void > ; |
(ranges TS) | |
Objeto función para realizar comparaciones. La plantilla principal invoca
operator
<
en lvalues constantes de tipo
T
con el orden de argumentos invertido y luego niega el resultado. La especialización
less_equal<void>
deduce los tipos de parámetros del operador de llamada a función de los argumentos (pero no el tipo de retorno).
Todas las especializaciones de
less_equal
son
Semiregular
.
Contenidos |
Tipos de miembros
| Tipo de miembro | Definición |
is_transparent
(miembro solo de la especialización
less_equal<void>
)
|
/* no especificado */ |
Funciones miembro
|
operator()
|
verifica si el primer argumento es
menor
que o
igual
al segundo
(función miembro pública) |
std::experimental::ranges::less_equal:: operator()
|
constexpr
bool
operator
(
)
(
const
T
&
x,
const
T
&
y
)
const
;
|
(1) |
(miembro solo de la plantilla principal
less_equal<T>
)
|
|
template
<
class
T,
class
U
>
requires StrictTotallyOrderedWith
<
T, U
>
||
|
(2) |
(miembro solo de la especialización
less_equal<void>
)
|
t
y
u
. Equivalente a
return
!
ranges::
less
<>
{
}
(
std::
forward
<
U
>
(
u
)
,
std::
forward
<
T
>
(
t
)
)
;
.
Notas
A diferencia de
std::less_equal
,
ranges::less_equal
requiere que los seis operadores de comparación
<
,
<=
,
>
,
>=
,
==
y
!=
sean válidos (mediante las restricciones
StrictTotallyOrdered
y
StrictTotallyOrderedWith
) y está completamente definido en términos de
ranges::less
. Sin embargo, la implementación puede utilizar directamente
operator
<=
, ya que esos conceptos requieren que los resultados de los operadores de comparación sean consistentes.
Ejemplo
|
Esta sección está incompleta
Motivo: sin ejemplo |
Véase también
|
objeto función que implementa
x
<=
y
(plantilla de clase) |