一:概述
C++20 引入了“三向比较运算符”(<=>),也称为“spaceship 运算符”,用来简化比较操作。这个运算符可以同时处理小于、大于和等于的比较,提供一个统一的接口来完成各种比较操作。
1. 基本语法
auto result = lhs <=> rhs;
/*
如果 lhs 小于 rhs,则返回负值(如 std::strong_ordering::less)。
如果 lhs 等于 rhs,则返回零值(如 std::strong_ordering::equal)。
如果 lhs 大于 rhs,则返回正值(如 std::strong_ordering::greater)
*/
2. 返回结果
三向比较运算符 <=>
生成一个比较结果对象,可以是以下三种类型之一:
std::strong_ordering
std::weak_ordering
std::partial_ordering