三路比较运算符(一)

阅读 50

2022-01-24

C++20以前,自定义一个需要比较大小的类时,需要重载一大堆的比较运算符。

C++20简化了比较运算符的定义,并引入了更好的方法,来处理它们。

本文主要介绍了,在C++20中,如何使用这些新特性,来定义和处理比较运算符。

为什么引入<=>

在C++20之前,你如果想比较两个自定义类之间的大小,则必须为它们定义六个比较运算符。
例如,如果你想比较一个Person类型的对象(有一个年龄属性age),你必须实现以下内容。

class Person {
   
private:
	int age_;
    
public:
    
// 等号重载
bool operator==</

精彩评论(0)

0 0 举报