运算符重载特点:
1. 可以重定义或重载 C# 中内置的运算符。因此,程序员也可以使用用户自定义类型的运算符。
2.重载运算符是具有特殊名称的函数,是通过关键字 operator 后跟运算符的符号来定义的。与其他函数一样,
3.重载运算符有返回类型和参数列表。
+, -, !, ~, ++, -- 这些一元运算符只有一个操作数,且可以被重载。
+, -, *, /, % 这些二元运算符带有两个操作数,且可以被重载。
==, !=, <, >, <=, >= 这些比较运算符可以被重载。
&&, || 这些条件逻辑运算符不能被直接重载。
+=, -=, *=, /=, %= 这些赋值运算符不能被重载。
=, ., ?:, ->, new, is, sizeof, typeof 这些运算符不能被重载。
以下为一个例子:
定义一个类 里面添加一个方法对加号进行重载 public static Rectangle operator +(Rectangle r1, Rectangle r2)
在main里面调用
结果为:
总结:在main里面调用,可以看出俩个非数字类型的数据也可以使用加号运算,rect1对象和rect2对象使用加号运算之后 触发operator + 方法,在改方法中我们把对象1和对象2长宽高分别加起来,返回给一个新的rect对象,所以再打印rect.width的值是5+5=10,rect.volume的值为4* 8 *10=320,重载了加号方法功能
写在最后:聪明出于勤奋,天才在于积累。——华罗庚
初次来到csdn,还望承蒙大佬的照顾指点