簡體   English   中英

開關盒返回“預期為常數”

[英]Switch Case Returns “A Constant Value is expected”

我到處搜索,遇到此問題的其他所有人都在使用.ToString方法,但我不是,所以我很茫然。

在最后一行,我返回“預期為常數”

我知道如果我刪除給出枚舉值的部分,它會起作用,但這有點違反了我使用枚舉的目的。 關於實現此目標的最佳方法的任何建議?

        public enum Colors
    {
        Blue = "0000FF",
        Red = "FF0000",
        Green= "00FF00"
    }
        private void colorstuff(Colors Color){
            switch (Color ){
                case Colors.Blue:

            }
        }

** EDIT因此,我已經意識到ENUM不能具有STRING類型。 誰能建議一種方法來制作一組字符串類型? 如果我只是宣布

        const Blue = "0000FF",
        const Red = "FF0000",
        const Green= "00FF00"

它們沒有相互依存。

枚舉基於int數據類型,因此您需要像這樣聲明它們:

Blue = 0x0000FF 

或者聲明一個類:

    public static class MyColours
    {
        public  const string Blue = "0000FF";
    }

親愛的,您不能像這樣定義枚舉,因為它是int類型。

 public enum Colors
    {
        Blue = 0000FF,
        Red = FF0000,
        Green= 00FF00
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM