23

Integer在 VB.NET 中,和之间有什么区别Int32吗?

如果是,请解释。

4

1 回答 1

35

Integer在功能上,类型和之间没有区别System.Int32。在 VB.NETInteger中只是System.Int32类型的别名。

标识符Int32Integer并不完全相等。 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

在这种情况下local1local2实际上是不同的类型,因为Int32绑定到用户定义的类型 over System.Int32

于 2013-03-08T06:09:05.053 回答