被误解的VB.NET

2025-10-27 20:25:08

1、误解一:VB.NET不支持无符号整数。

解释:

a、无符号整数是FCL的System命名空间下的类型,所有.NET语言都能直接使用;

b、VB.NET的基元类型包含无符号整数。

示例:

Dim a As System.UInt32

Dim b As UInteger

2、误解二:VB.NET 不支持移位运算

解释:VB.NET支持移位运算,甚至允许重载。

示例:

Dim a As Integer = 12

Dim b As Integer = a << 3

3、误解三:VB.NET 不支持运算符重载。

解释:VB.NET提供完整的机三驼制来支持运行符劫慎醒重载。

示例婶倘:

Class TypeA

Public A As Integer

Public B As Integer

Public Shared Operator +(v1 As TypeA, v2 As TypeA) As TypeA

Return New TypeA With {

.A = v1.A + v2.A,

.B = v1.B + v2.B

}

End Operator

Public Shared Operator +(v1 As TypeA, v2 As Integer) As TypeA

Return New TypeA With {

.A = v1.A + v2,

.B = v1.B + v2

}

End Operator

Public Shared Operator *(v1 As TypeA, v2 As TypeA) As Integer

Return v1.A * v2.A + v1.B * v2.B

End Operator

End Class

4、误解四:VB.NET比C#的运行效率低。

解释:VB.NET和C#都是生成IL代码,运行效率低根本就是无稽之谈。

5、误解五:学VB.NET必须先学C#。

解释:

种种原因,现在市面上的VB.NET的教程确实要比C#的少好多。所以部分人认为通过C#来曲线学习VB.NET。但是,这只是其中一种途径,并不是唯一途径。VB.NET的使用在MSDN上有详细的介绍(机器翻译可能会有不准,但其提供的示例是完全没有问题的)。而网上的C#例子,也可能用工具转换成VB.NET代码。

当然,到了一定的层次,两种语言都能看得懂,然后可以根据自己的习惯来使用。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢