没有为C ++ 20中的自定义太空飞船运算符实现定义平等运算符
我<=>在C ++ 20中使用新的宇宙飞船运算符遇到一种奇怪的行为。我正在将Visual Studio 2019编译器与一起使用/std:c++latest。 这段代码可以正常编译: #include <compare> struct X { int Dummy = 0; auto operator<=>(const X&) const = default; // Default implementation }; int main() { X a, b; a == b; // OK! return 0; } 但是,如果我将X更改为: struct X { int Dummy = 0; auto operator<=>(const X& …