Powiel możliwe:
C# int, Int32 and enum'sczłonkowie enum typu Int32
To może być raczej podstawowy/prostsze pytanie tworzę enum w następujący sposób.
Przypadek 1 doskonale się kompiluje. Ale Przypadek 2 zgłasza błąd. Dla mojego zrozumienia int i Int32 oznacza to samo w języku C#.
Case 1
[Flags]
public enum MyEnum : int
{
Red = 0x1,
Green = 0x2,
Blue = 0x4
}
Case 2
[Flags]
public enum MyEnum : Int32
{
Red = 0x1,
Green = 0x2,
Blue = 0x4
}
Jaka jest różnica tutaj i dlaczego C# nie skompilować kod, kiedy członkowie wyliczenia są podane, aby być typu Int32?
Duplikat. http://stackoverflow.com/questions/1813408/c-int-int32-and-enums –
Ciekawe ... Myślałem int i Int32 były idealnie równoważne kompilator, ale najwyraźniej tak nie jest. –
Nie są nawet bliskie odpowiednikowi. 'int' jest słowem kluczowym,' Int32' jest zwykłym identyfikatorem, który jest niekwalifikowaną nazwą typu pierwotnego zdefiniowanego w przestrzeni nazw 'System'. Tak, na przykład, mógłbym utworzyć klasę 'MyNamespace.Int32', ale' MyNamespace.int' jest błędem składni. –