std::operator==,!=,<,<=>(std::error_code)

来自cppreference.com
< cpp‎ | error‎ | error code
 
 
工具库
通用工具
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中弃用)
整数比较函数
(C++20)(C++20)(C++20)
(C++20)
swap 与类型运算
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
常用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
初等字符串转换
(C++17)
(C++17)
 
 
 
在标头 <system_error> 定义
bool operator==( const std::error_code& lhs,
                 const std::error_code& rhs ) noexcept;
(1) (C++11 起)
bool operator!=( const std::error_code& lhs,
                 const std::error_code& rhs ) noexcept;
(2) (C++11 起)
(C++20 前)
bool operator<( const std::error_code& lhs,
                const std::error_code& rhs ) noexcept;
(3) (C++11 起)
(C++20 前)
std::strong_ordering operator<=>( const std::error_code& lhs,
                                  const std::error_code& rhs ) noexcept;
(4) (C++20 起)

比较二个 error_code 对象。

1) 比较 lhsrhs 的相等性。
2) 比较 lhsrhs 的相等性。
3) 检查 lhs 是否小于 rhs
4) 获得 lhsrhs 的三路比较结果。

<<=>>=!= 运算符分别从 operator<=>operator== 合成

(C++20 起)

参数

lhs, rhs - 要比较的 error_code

返回值

1) 若错误类别和错误值比较相等则为 true
2) 若错误类别或错误值比较不相等则为 true
3)lhs.category() < rhs.category() 则为 true 。否则,若 lhs.category() == rhs.category() && lhs.value() < rhs.value() 则为 true 。否则为 false
4)lhs.category() <=> rhs.category() 不为 std::strong_ordering::equal 则为该值。否则为 lhs.value() <=> rhs.value()

参阅

获得此 error_code 的 error_category
(公开成员函数)