operator==,!=,<,<=,>,>=(std::filesystem::path)
From cppreference.com
< cpplrm; | filesystemlrm; | path
bool operator==( const path& lhs, const path& rhs ) noexcept; |
(1) | (since C++17) |
bool operator!=( const path& lhs, const path& rhs ) noexcept; |
(2) | (since C++17) |
bool operator<( const path& lhs, const path& rhs ) noexcept; |
(3) | (since C++17) |
bool operator<=( const path& lhs, const path& rhs ) noexcept; |
(4) | (since C++17) |
bool operator>( const path& lhs, const path& rhs ) noexcept; |
(5) | (since C++17) |
bool operator>=( const path& lhs, const path& rhs ) noexcept; |
(6) | (since C++17) |
Compares two paths lexicographically.
1) Checks whether
lhs
and rhs
are equal. Equivalent to !(lhs < rhs) && !(rhs < lhs).2) Checks whether
lhs
and rhs
are not equal. Equivalent to !(lhs == rhs).3) Checks whether
lhs
is less than rhs
. Equivalent to lhs.compare(rhs) < 0.4) Checks whether
lhs
is less than or equal to rhs
. Equivalent to !(rhs < lhs).5) Checks whether
lhs
is greater than rhs
. Equivalent to rhs < lhs.6) Checks whether
lhs
is greater than or equal to rhs
. Equivalent to !(lhs < rhs).Parameters
lhs, rhs | - | the paths to compare |
Return value
true if the corresponding comparison yields, false otherwise.
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 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.
See also
compares the lexical representations of two paths lexicographically (public member function) |