在 C++ 中重载 += 运算符 - 如何传递左操作数?
Overloading += operator in C++ - How do you pass the left operand?
我需要创建一个接受双精度 'parameter' 的运算符。
myClass myobject();
double mydouble = 10000;
mydouble += myobject;
我的接线员:
double operator+=(double value, const myclass& object)
{
value += object.value;
return value;
}
参数值作为零传递给运算符 +=,即使 mydouble 初始化为 10000。
如何创建可以接受左操作数作为参数的运算符?
正确的原型如下:
double& operator+=(double& value, const myClass& obj)
我需要创建一个接受双精度 'parameter' 的运算符。
myClass myobject();
double mydouble = 10000;
mydouble += myobject;
我的接线员:
double operator+=(double value, const myclass& object)
{
value += object.value;
return value;
}
参数值作为零传递给运算符 +=,即使 mydouble 初始化为 10000。
如何创建可以接受左操作数作为参数的运算符?
正确的原型如下:
double& operator+=(double& value, const myClass& obj)