std::error_category::operator==,!=,<,<=>
bool operator==( const error_category& rhs ) const noexcept; | (1) | (с C++11) |
bool operator!=( const error_category& rhs ) const noexcept; | (2) | (с C++11) (до C++20) |
bool operator<( const error_category& rhs ) const noexcept; | (3) | (с C++11) (до C++20) |
std::strong_ordering operator<=>( const error_category& rhs ) const noexcept; | (4) | (с C++20) |
Сравнивает с другой категорией ошибок.
1) Проверяет, ссылаются ли
*this и rhs на один и тот же объект.
2) Проверяет, не ссылаются ли
*this и rhs на один и тот же объект.
3) Упорядочивает
*this и rhs в соответствии с порядком this и &rhs. Эквивалентно std::less<const error_category*>()(this, &rhs).
4) Упорядочивает
*this и rhs в соответствии с порядком this и &rhs. Эквивалентно std::compare_three_way()(this, &rhs).| Операторы | (с C++20) |
Параметры
| rhs | - | задаёт error_category для сравнения |
Возвращаемое значение
1)
true, если *this и rhs ссылаются на один и тот же объект, в противном случае false.
2)
true, если *this и rhs не ссылаются на один и тот же объект, в противном случае false.
3)
true, если *this меньше rhs согласно порядку, определённому this и &rhs.
4)
std::strong_order::less, если *this меньше rhs согласно порядку, определённому this и &rhs; в противном случае std::strong_order::greater, если rhs меньше *this в этом порядке; в противном случае std::strong_order::equal.
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/error/error_category/operator_cmp