VB 2005 运算符重载全解析
1. 运算符重载概述
在 VB 2005 中,运算符重载是一项新特性,C++ 和 C# 早就具备此能力。和方法重载类似,你也能对像 + 、 - 、 * 这类运算符进行重载。除了算术运算符,还能创建自定义转换运算符,实现类型间的转换,让对象可用于布尔测试表达式。
不过,能重载运算符不代表就该这么做。运算符重载能让某些类和结构体用起来更自然,但要谨慎考虑类型运算符的语义,别引入难以理解和维护的内容。代码要追求高可读性,这不仅是为了后续看代码的人,也是为了自己。而且,并非所有 .NET 语言都支持运算符重载,因为它不属于公共语言规范(CLS)。比如,VB 2005 是首个支持运算符重载的 VB 版本。所以,重载运算符最好是执行相同操作的辅助方法的语法捷径,这样 CLS 兼容的语言也能调用。
2. 可重载的运算符
在 VB 中,可重载的运算符主要有三种:一元运算符、二元运算符和转换运算符。这里无法列出所有转换运算符,因为其数量是无限的。一元运算符只有一个操作数,像 -108 里的一元负号;二元运算符有两个操作数,例如 2 + 2 中的加法运算符。以下是除转换运算符外可重载的运算符列表:
| 运算符 | 运算符类型 | 描述 |
| — | — | — |
| + | 二元 | 加法 |
| - | 二元 | 减法 |
| * | 二元 | 乘法 |
| ^ | 二元 | 指数运算 |
| / | 二元 | 除法 |
超级会员免费看
订阅专栏 解锁全文
813

被折叠的 条评论
为什么被折叠?



