在VB.NET中,Integer
和Int32
之间有什么区别吗?
如果是,请解释。
答案 0 :(得分:33)
从功能上讲,Integer
和System.Int32
类型之间没有区别。在VB.NET中,Integer
只是System.Int32
类型的别名。
标识符Int32
和Integer
并不完全相同。 Integer
始终是System.Int32
的别名,编译器可以理解。 Int32
虽然在编译器中并不是特殊的,但是像任何其他类型一样通过正常的名称解析。因此,Int32
可能在某些情况下绑定到不同的类型。这是非常罕见的;没有人应该定义自己的Int32
类型。
这是一个具体的复制品,展示了它的不同之处。
Class Int32
End Class
Module Module1
Sub Main()
Dim local1 As Integer = Nothing
Dim local2 As Int32 = Nothing
local1 = local2 ' Error!!!
End Sub
End Module
在这种情况下,local1
和local2
实际上是不同的类型,因为Int32
会在System.Int32
上绑定到用户定义的类型。