У кого-либо есть очень простой пример того, как перегрузить составной оператор присваивания в C#?
Вы не можете явно перегрузить составные операторы присваивания. Однако вы можете перегрузить главный оператор, и компилятор расширит его.
x += 1
- это чисто синтаксический сахар для x = x + 1
, и именно в него он будет переведен. Если вы перегрузите оператор +
, он будет называться.
MSDN Operator Overloading Tutorial
public static Complex operator +(Complex c1, Complex c2)
{
return new Complex(c1.real + c2.real, c1.imaginary + c2.imaginary);
}