运算符重载,让自定义的类型可以进行运算;
class Program
{
static void Main(string[] args)
{
A a = new A();
A b = new A();
a.i = 9;
b.i = 3;
A c = a + b;
Console.WriteLine(c.i);
}
}
class A
{
public int i;
public static A operator + (A a, A b) //返回值为两个对象进行运算时返回的结果,参数为需要进行运算符重载的类型的参数
//运算符重载必须为public static operator 后边跟着需要进行的计算, 一元运算符只需要一个参数(类似i++),二元运算符需要两个参数
{
A c = new A();
c.i = a.i + b.i; //希望这种自定义的类型相加之后进行如何运算;
return c;
}
}