可以重定义或重载C#中内置的运算符.因此,程序员也可以使用用户自定义类型的运算符.重载运算符是具有特殊名称的函数,是通过关键字operator后跟运算符的符号来定义的.与其他函数一样,重载运算符有返回类型和参数列表.
运算符重载的实现:
可重载和不可重载运算符
下表描述了C#中运算符重载的能力:
运算符 | 描述 |
+,-,!,~,++,-- | 这些一元运算符只有一个操作符,且可以被重载. |
+,-,*,/,% | 这些二次元运算符带有两个操作数,且可以被重载. |
==.!=,<.>.<=.>= | 这些比较运算符可以被重载. |
&&,|| | 这些条件逻辑运算符不能被直接重载 |
+=,-=,*=,/=,%= | 这些赋值运算符不能被重载 |
=,.,?:,->,new,is,sizeof,typeof | 这些运算符不能被重载. |