operator==,!=,<,<=,>,>=,<=> (std::filesystem::path)
friend
bool
operator
==
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(1) | (since C++17) |
friend
bool
operator
!
=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(2) |
(since C++17)
(until C++20) |
friend
bool
operator
<
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(3) |
(since C++17)
(until C++20) |
friend
bool
operator
<=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(4) |
(since C++17)
(until C++20) |
friend
bool
operator
>
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(5) |
(since C++17)
(until C++20) |
friend
bool
operator
>=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(6) |
(since C++17)
(until C++20) |
friend
std::
strong_ordering
operator <=> ( const path & lhs, const path & rhs ) noexcept ; |
(7) | (since C++20) |
Compares two paths lexicographically.
These functions are not visible to ordinary unqualified or qualified lookup , and can only be found by argument-dependent lookup when std::filesystem::path is an associated class of the arguments. This prevents undesirable conversions in the presence of a using namespace std :: filesystem ; using-directive .
The
|
(since C++20) |
Parameters
lhs, rhs | - | the paths to compare |
Return value
Notes
Path equality and equivalence have different semantics.
In the case of equality, as determined by
operator==
, only lexical representations are compared. Therefore,
path
(
"a"
)
==
path
(
"b"
)
is never
true
.
In the case of equivalence, as determined by std::filesystem::equivalent() , it is checked whether two paths resolve to the same file system object. Thus equivalent ( "a" , "b" ) will return true if the paths resolve to the same file.
Example
This section is incomplete
Reason: no example |
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 3065 | C++17 |
allowed comparison of everything convertible to
path
in the presence of a
using-directive
|
made hidden friend |
See also
compares the lexical representations of two paths lexicographically
(public member function) |
|
(C++17)
|
checks whether two paths refer to the same file system object
(function) |