Wenn Sie in C# eine Enumeration deklarieren, ist der Standardtyp automatisch int.C# Enums und Casting
Also warum in einer case-Anweisung oder anderen Instanzen, wenn Sie die enum verwenden, müssen Sie explizit umschreiben, um die Werte zu verwenden? Was ist der Grund dafür, einen zugrunde liegenden Typ zu haben, wenn du explizit etwas sagen musst oder mache ich hier nur etwas falsch?
private enum MyEnum
{
Value1,
Value2,
Value3
}
switch (somevalue)
{
case (int)MyEnum.Value1:
someothervar = "ss";
break;
case (int)MyEnum.Value2:
someothervar = "yy";
break;
case (int)MyEnum.Value3:
someothervar = "gg";
break;
}
Diese Code-Snippets sehen ein bisschen ackward aus. Sie definieren eine enum und der eingehende Parameter (somevalue) ist ein int. Sieht mir komisch aus ... –