Eventuali duplicati:
C# int, Int32 and enum'smembri enum di tipo Int32
Potrebbe essere un piuttosto di base/domanda più semplice sto creando un enum nel modo seguente.
Il caso 1 è perfetto. Ma il caso 2 genera un errore. Secondo me int e Int32 significano lo stesso in C#.
Caso 1
[Flags]
public enum MyEnum : int
{
Red = 0x1,
Green = 0x2,
Blue = 0x4
}
Caso 2
[Flags]
public enum MyEnum : Int32
{
Red = 0x1,
Green = 0x2,
Blue = 0x4
}
Qual è la differenza qui e perché C# non compilare il codice quando i membri della enum sono specificati per essere di tipo Int32?
Duplicate:. http://stackoverflow.com/questions/1813408/c-int-int32-and-enums –
Interessante ... ho pensato int e Int32 erano perfettamente equivalente al compiler, ma apparentemente non è il caso –
Non sono nemmeno vicini all'equivalente. 'int' è una parola chiave,' Int32' è un identificatore ordinario che sembra essere il nome non qualificato di un tipo primitivo definito nello spazio dei nomi 'Sistema'. Quindi, ad esempio, potrei creare una classe 'MyNamespace.Int32', ma' MyNamespace.int' è un errore di sintassi –