std::experimental::ranges:: less_equal
|
Definiert im Header
<experimental/ranges/functional>
|
||
|
template
<
class
T
=
void
>
requires StrictTotallyOrdered
<
T
>
||
|
(ranges TS) | |
|
template
<>
struct less_equal < void > ; |
(ranges TS) | |
Funktionsobjekt zum Durchführen von Vergleichen. Die primäre Template-Instanz ruft
operator
<
auf const Lvalues vom Typ
T
mit invertierter Argumentreihenfolge auf und negiert dann das Ergebnis. Die Spezialisierung
less_equal<void>
leitet die Parametertypen des Funktionsaufrufoperators aus den Argumenten ab (aber nicht den Rückgabetyp).
Alle Spezialisierungen von
less_equal
sind
Semiregular
.
Inhaltsverzeichnis |
Mitgliedertypen
| Mitgliedstyp | Definition |
is_transparent
(nur Mitglied von
less_equal<void>
Spezialisierung)
|
/* nicht spezifiziert */ |
Memberfunktionen
|
operator()
|
prüft, ob das erste Argument
kleiner
als oder
gleich
dem zweiten ist
(public member function) |
std::experimental::ranges::less_equal:: operator()
|
constexpr
bool
operator
(
)
(
const
T
&
x,
const
T
&
y
)
const
;
|
(1) |
(nur Mitglied der primären
less_equal<T>
-Vorlage)
|
|
template
<
class
T,
class
U
>
requires StrictTotallyOrderedWith
<
T, U
>
||
|
(2) |
(nur Mitglied der
less_equal<void>
-Spezialisierung)
|
t
und
u
. Entspricht
return
!
ranges::
less
<>
{
}
(
std::
forward
<
U
>
(
u
)
,
std::
forward
<
T
>
(
t
)
)
;
.
Hinweise
Im Gegensatz zu
std::less_equal
erfordert
ranges::less_equal
alle sechs Vergleichsoperatoren
<
,
<=
,
>
,
>=
,
==
und
!=
gültig zu sein (über die
StrictTotallyOrdered
und
StrictTotallyOrderedWith
Constraints) und ist vollständig in Bezug auf
ranges::less
definiert. Die Implementierung kann jedoch frei
operator
<=
direkt verwenden, da diese Konzepte erfordern, dass die Ergebnisse der Vergleichsoperatoren konsistent sind.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Siehe auch
|
Funktionsobjekt, das
x
<=
y
implementiert
(Klassentemplate) |