操作符重载是指重新定义操作符对于某种类型的行为。比如System.String 重载了 == 和 != 操作符。操作符重载的方法必须是由public static修饰的。
代码示例
using System;
public sealed class Program
{
private int x;
// override the operator +
public static Program operator + (Program p1, Program p2)
{
return new Program(p1.x + p2.x);
}
// override the ToString method
public override String ToString()
{
return String.Format(this.x.ToString());
}
// initialize the field x
public Program(int x)
{
this.x = x;
}
public static void Main()
{
Program p1 = new Program(2);
Program p2 = new Program(3);
Program p = p1 + p2;
// display the result
Console.WriteLine(p);
}
}