在VB.NET中,Integer
和Int32
之间有什么区别吗?
如果是,请解释一下。
最佳答案
从功能上来说,Integer
类型和 System.Int32
类型之间没有区别。在 VB.NET 中,Integer
只是 System.Int32
类型的别名。
尽管标识符 Int32
和 Integer
并不完全相等。 Integer
始终是 System.Int32
的别名,并且可以被编译器理解。不过,Int32
在编译器中并不是特殊情况,并且会像任何其他类型一样经历正常的名称解析。因此,在某些情况下,Int32
可以绑定(bind)到不同的类型。但这是非常罕见的;没有人应该定义自己的 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绑定(bind)到用户定义的类型
.
关于.net - VB.NET中Integer和Int32有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15287742/