在c#中,int和Int32是同一个东西,但我读过很多次int比Int32更受欢迎,没有给出原因。这是有原因的吗,我应该在意吗?


当前回答

int和Int32是一样的。int是Int32的别名。

其他回答

这在实践中没有什么区别,最终你会采用你自己的惯例。我倾向于在分配类型时使用关键字,在使用静态方法时使用类版本等:

int total = Int32.Parse("1009");

使用Int32类型需要对System或完全限定(System.Int32)的命名空间引用。我倾向于int,因为它不需要名称空间导入,因此在某些情况下减少了名称空间冲突的机会。当编译为IL时,两者之间没有区别。

你不应该在乎。大多数时候你应该使用int。它将有助于将来将程序移植到更广泛的体系结构(目前int是System的别名。Int32,但这可能会改变)。只有当变量的位宽很重要时(例如:要控制结构体在内存中的布局),才应该使用int32和其他变量(与"using System;"相关联)。

你不应该关心大多数编程语言,除非你需要编写非常特定的数学函数,或者针对特定架构优化的代码……只要确保类型的大小足够你(例如,如果你知道你需要超过32位,就使用比Int更大的类型)

int是一个c#关键字,是明确的。

大多数情况下,这并不重要,但有两件事与Int32相悖:

您需要有一个“using System;”语句。使用"int"不需要Using语句。 可以定义自己的名为Int32的类(这将是愚蠢和令人困惑的)。Int总是Int的意思。