operator==,!=,<,<=,>,>=,<=> (std::filesystem::path)
|
friend
bool
operator
==
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(1) | (seit C++17) |
|
friend
bool
operator
!
=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(2) |
(seit C++17)
(bis C++20) |
|
friend
bool
operator
<
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(3) |
(seit C++17)
(bis C++20) |
|
friend
bool
operator
<=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(4) |
(seit C++17)
(bis C++20) |
|
friend
bool
operator
>
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(5) |
(seit C++17)
(bis C++20) |
|
friend
bool
operator
>=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(6) |
(seit C++17)
(bis C++20) |
|
friend
std::
strong_ordering
operator <=> ( const path & lhs, const path & rhs ) noexcept ; |
(7) | (seit C++20) |
Vergleicht zwei Pfade lexikographisch.
Diese Funktionen sind für gewöhnliche unqualified oder qualified lookup nicht sichtbar und können nur durch argument-dependent lookup gefunden werden, wenn std::filesystem::path eine assoziierte Klasse der Argumente ist. Dies verhindert unerwünschte Konvertierungen bei Vorhandensein einer using namespace std :: filesystem ; using-directive .
|
Die Operatoren
|
(seit C++20) |
Inhaltsverzeichnis |
Parameter
| lhs, rhs | - | die zu vergleichenden Pfade |
Rückgabewert
Hinweise
Pfadgleichheit und Äquivalenz haben unterschiedliche Semantiken.
Im Falle von Gleichheit, wie durch
operator==
bestimmt, werden nur lexikalische Darstellungen verglichen. Daher ist
path
(
"a"
)
==
path
(
"b"
)
niemals
true
.
Im Falle von Äquivalenz, wie durch std::filesystem::equivalent() bestimmt, wird geprüft, ob zwei Pfade zur selben Dateisystemobjekt aufgelöst werden . Daher wird equivalent ( "a" , "b" ) true zurückgeben, wenn die Pfade zur selben Datei aufgelöst werden.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 3065 | C++17 |
erlaubte den Vergleich aller zu
path
konvertierbaren Typen bei Vorhandensein einer
using-directive
|
als versteckter Freund implementiert |
Siehe auch
|
vergleicht die lexikalischen Darstellungen zweier Pfade lexikographisch
(öffentliche Elementfunktion) |
|
|
(C++17)
|
prüft, ob zwei Pfade auf dasselbe Dateisystemobjekt verweisen
(Funktion) |