C++ 运算符重载?

C++ 运算符重载?,c++,operator-overloading,C++,Operator Overloading,“和”是什么意思?为什么不是我的类而不是我的类&?这个&仅仅意味着操作符=的返回值是一个引用 这与运算符重载无关。与普通函数定义的语法相同: MyClass & operator=(const MyClass &rhs); 返回MyClass&只是为了让操作符“=”在链中工作。 返回MyClass&或其他内容不会对重载“=”产生任何影响 ReturingMyClass&帮助我们使用“=”类似于我们在内置数据类型上使用它的方式。 例如 类似的讨论,请参考C++中的思维,(IoS

“和”是什么意思?为什么不是
我的类
而不是
我的类&

这个
&
仅仅意味着
操作符=
的返回值是一个引用

这与运算符重载无关。与普通函数定义的语法相同:

 MyClass & operator=(const MyClass &rhs);

返回
MyClass&
只是为了让操作符“=”在链中工作。 返回
MyClass&
或其他内容不会对重载“=”产生任何影响

Returing
MyClass&
帮助我们使用“=”类似于我们在内置数据类型上使用它的方式。 例如


类似的讨论,请参考C++中的思维,(IoSokes)。顺便说一下,Google“C++ C++中的AppSand”产生了大量的相关结果。我认为你需要学习C++的基本原理。试试a.“

MyClass*foo()
”的含义是什么?@这意味着它返回一个指针。但这确实是基本的,基本的东西。在stackoverflow上盲目地问这个问题可能不会对你有多大帮助。你应该读一本好的C++入门书。
MyClass& foo()
{
  return *this; // returns a reference to MyClass instance
}

MyClass foo()
{
  return *this; // returns a copy of MyClass instance
}
int x = y = z = 123;