我试图做操作符重载+=,但我不能.我只能让操作员超载+.
怎么会?
编辑
这不起作用的原因是我有一个Vector类(带有X和Y字段).请考虑以下示例.
vector1 += vector2;
Run Code Online (Sandbox Code Playgroud)
如果我的运算符重载设置为:
public static Vector operator +(Vector left, Vector right)
{
return new Vector(right.x + left.x, right.y + left.y);
}
Run Code Online (Sandbox Code Playgroud)
然后结果将不会添加到vector1,而是vector1也将通过引用成为全新的Vector.