Firstly, the operator +=cannot be overloaded. If you have an expression A += B, it compiles as if you wrote: *
A = A + B
, string operator += ( ). operator +? CLR #. # , , string int, , ( string.Concat() string add int).
? , . , int:
- ,
int , . - int. - . , ,
checked unchecked. , operator +? ( add add.ovf .)
string . , string a, b c a + b + c, operator +, string a + b, . string.Concat(a, b, c), .
* , . , #. , A += B , , X += Y += Z;.