Visual Studio
误解一:VB.NET不支持无符号整数。解释:a、无符号整数是FCL的System命名空间下的类型,所有.NET语言都能直接使用;b、VB.NET的基元类型包含无符号整数。示例:Dim a As System.UInt32Dim b As UInteger
误解二:VB.NET 不支持移位运算解释:VB.NET支持移位运算,甚至允许重载。示例:Dim a As Integer = 12Dim b As Integer = a << 3
误解三:VB.NET 不支持运算符重载。解释:VB.NET提供完整的机制来支持运行符重载。示例:Class TypeAPublic A As IntegerPublic B As IntegerPublic Shared Operator +(v1 As TypeA, v2 As TypeA) As TypeAReturn New TypeA With {.A = v1.A + v2.A,.B = v1.B + v2.B}End OperatorPublic Shared Operator +(v1 As TypeA, v2 As Integer) As TypeAReturn New TypeA With {.A = v1.A + v2,.B = v1.B + v2}End OperatorPublic Shared Operator *(v1 As TypeA, v2 As TypeA) As IntegerReturn v1.A * v2.A + v1.B * v2.BEnd OperatorEnd Class
误解四:VB.NET比C#的运行效率低。解释:VB.NET和C#都是生成IL代码,运行效率低根本就是无稽之谈。
误解五:学VB.NET必须先学C#。解释:种种原因,现在市面上的VB.NET的教程确实要比C#的少好多。所以部分人认为通过C#来曲线学习VB.NET。但是,这只是其中一种途径,并不是唯一途径。VB.NET的使用在MSDN上有详细的介绍(机器翻译可能会有不准,但其提供的示例是完全没有问题的)。而网上的C#例子,也可能用工具转换成VB.NET代码。当然,到了一定的层次,两种语言都能看得懂,然后可以根据自己的习惯来使用。