Contents

运算符重载

运算符重载

  • 让自定义类和结构体能够使用运算符
  • 使用关键字operator
  • 不能使用ref和out
  • 只可以有两个参数
  • 如果是++ 或者– 则是一个参数
  • 条件运算符需要成对出现< >
class Point{
	public int x;
	public int y;
    //重载+
	public static Point operator +(Point p1,Point p2){
		Point p = new Point();
		p.x = p1.x+p2.x;
		p.y = p1.y+p2.y;
		return p;
	}
    //重载 重载运算符
    //顺序要相同 p+3  3+p报错
    public static Point operator +(Point p1,int value){
		Point p = new Point();
		p.x = p1.x+value;
		p.y = p1.y+value;
		return p;
	}
}