Namespaces
Variants
Views
Actions

operator==,!=,<,<=,>,>=,<=>(std::filesystem::path)

From cppreference.com
< cpp‎ | filesystem‎ | path
Revision as of 07:29, 2 June 2021 by Space Mission (Talk | contribs)

 
 
 
 
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.

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).
7) Obtains the three-way comparison result of lhs and rhs. Equivalent to lhs.compare(rhs) <=> 0.

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 <, <=, >, >=, and != operators are synthesized from operator<=> and operator== respectively.

(since C++20)

Contents