System.Int32和int的MSIL是否一样?

可能重复:
C#,int或Int32? 我应该在乎吗?

请任何一个让我知道System.Int32的MSIL和int将相同或不同,如果不同,那么我们应该使用哪一个。

编辑:

这不会编译

public  enum MyEnum : Int32
{
    AEnum = 0
}

但这会

public enum MyEnum : int
{
    AEnum = 0
}

intSystem.Int32的别名,它们完全相同。

enums只能将整型类型作为类型,否则这将是可能的:

using Int32 = System.String;

public enum Something : Int32
{
}

这是根据C#规范,其中说

enum-declaration:
[attributes] [enum-modifiers ] enum identifier [enum-base] enum-body [;]

where
enum-base:
":" integral-type

用整型指定为:

integral-type:
sbyte
byte
short
ushort
int
uint
long
ulong
char

http://msdn.microsoft.com/en-us/library/5kzh1b5w(v=VS.100).aspx

类型:int
.NET Framework类型:System.Int32


两者是相同的,但int是语言规范是C#语法和用法的权威来源

Int32是一种不可变的值类型,它表示有符号整数,其值范围从负2,147,483,648(用Int32.MinValue常量表示)到正2,147,483,647(用Int32.MaxValue常数表示)。

链接地址: http://www.djcxy.com/p/21035.html

上一篇: MSIL of System.Int32 and int will be same?

下一篇: C# If Equals Case insensitive