I'm from C++ and using C# as newbie, just tried this out:
class Class1
{
int mI = 0;
string mS = "ab";
public static Class1 operator + (Class1 obj1, Class1 obj2)
{
return new Class1()
{
mI = obj1.mI + obj2.mI,
mS = obj1.mS + obj2.mS
};
}
public static void operator += (Class1 obj1)
{
mI += obj1.mI;
mS += obj1.mS;
}
}
I found that operator+=
function doesn't compile, saying:
error CS1019: Overloadable unary operator expected.
So C# doesn't do this kind of operator overloading at all?