operator==,!=,<,<=,>,>=,<=> (std::filesystem::path)
|
friend
bool
operator
==
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(1) | (начиная с C++17) |
|
friend
bool
operator
!
=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(2) |
(начиная с C++17)
(до C++20) |
|
friend
bool
operator
<
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(3) |
(начиная с C++17)
(до C++20) |
|
friend
bool
operator
<=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(4) |
(начиная с C++17)
(до C++20) |
|
friend
bool
operator
>
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(5) |
(начиная с C++17)
(до C++20) |
|
friend
bool
operator
>=
(
const
path
&
lhs,
const
path
&
rhs
)
noexcept
;
|
(6) |
(начиная с C++17)
(до C++20) |
|
friend
std::
strong_ordering
operator <=> ( const path & lhs, const path & rhs ) noexcept ; |
(7) | (начиная с C++20) |
Сравнивает два пути лексикографически.
Эти функции не видны при обычном unqualified или qualified lookup , и могут быть найдены только с помощью argument-dependent lookup , когда std::filesystem::path является ассоциированным классом аргументов. Это предотвращает нежелательные преобразования при наличии using namespace std :: filesystem ; using-directive .
|
Операторы
|
(начиная с C++20) |
Содержание |
Параметры
| lhs, rhs | - | пути для сравнения |
Возвращаемое значение
Примечания
Пути равенства и эквивалентности имеют различную семантику.
В случае равенства, определяемого с помощью
operator==
, сравниваются только лексические представления. Следовательно,
path
(
"a"
)
==
path
(
"b"
)
никогда не является
true
.
В случае эквивалентности, определяемой с помощью std::filesystem::equivalent() , проверяется, ведут ли два пути к одному и тому же объекту файловой системы. Таким образом, equivalent ( "a" , "b" ) вернёт true , если пути указывают на один и тот же файл.
Пример
|
Этот раздел не завершён
Причина: отсутствует пример |
Отчеты о дефектах
Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.
| 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 |
Смотрите также
|
сравнивает лексические представления двух путей лексикографически
(public member function) |
|
|
(C++17)
|
проверяет, ссылаются ли два пути на один и тот же объект файловой системы
(function) |