这个问题已经在这里有了答案:




9年前关闭。






请让我知道System.Int32和int的MSIL相同或不同,如果不同,则应使用哪一个。

编辑:

这不会编译

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

关于c# - System.Int32和int的MSIL是否相同?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6187112/

10-12 01:17
查看更多