下午好,在C#鑄造,讓我們說我有枚舉使用整數枚舉不
public enum Test : int
{
TestValue1 = 0,
TestValue2,
TestValue3
}
爲什麼我不能使用像Int32 IntTest = Test.TestValue1
語句不進行強制轉換意味着IntTest = 0
?如果我稍後決定向枚舉中添加更多項目,這將會非常有用。我想我不得不使用Int32 IntTest = (Int32) Test.TestValue1
,我認爲應該是多餘的......還有,爲什麼我不能讓像
switch (IntTest)
{
case (Test.TestValue1) : DoSomething();
break;
case (Test.TestValue2) : DoSomethingElse();
break;
default : Do Nothing();
}
?編譯器說,它期望在TestValue1
的地方有一個恆定的值......這個值是不是恆定的?
非常感謝。
不應該是'case(Test.TestValue1)''而不是'case(TestValue1)'嗎?你想與枚舉進行比較,對吧? – 2010-11-22 15:44:39