我正在做java分配,我遇到了这个代码.
int x=3, y=5;
System.out.println(x + y + " = " + y + x);
Run Code Online (Sandbox Code Playgroud)
输出为"8 = 53".为什么要评估第一个x + y并打印最后一个y和x表达式?让我疑惑.Thanx提前的家伙.
所以我为具有变量num和den的fraction类写了这个重载函数.
fraction operator +(fraction & f1, fraction & f2)
{
fraction temp;
temp.num = (f1.num * f2.den ) + ( f1.den * f2.num );
temp.den = (f1.den * f2.den );
return temp;
}
Run Code Online (Sandbox Code Playgroud)
如果我使用这个代码f1 = f1+f2,它运行正常.但我想使用它f1 = f2+fraction(3,4)
如果我尝试以这种方式使用它,它显示无效的操作数分数和分数.任何人都可以识别出这种错误及其发生的原因.提前致谢.