C++标准库的有序容器与算法使用<
运算符,其他比较都由它实现,因此你的<
定义必须满足严格弱序,而初学者很容易因为<=
等写法违背此要求。而C++20引入了被戏称为“宇宙飞船运算符”的 <=>
,现在只需定义<=>
和==
就能自动生成其他比较运算,不必担心严格弱序问题。
暂无评论
C++标准库的有序容器与算法使用<
运算符,其他比较都由它实现,因此你的<
定义必须满足严格弱序,而初学者很容易因为<=
等写法违背此要求。而C++20引入了被戏称为“宇宙飞船运算符”的 <=>
,现在只需定义<=>
和==
就能自动生成其他比较运算,不必担心严格弱序问题。