什麼是枚舉標誌

提問

回答

C#中的標誌枚舉
標誌枚舉在聲明枚舉前加[flag]
枚舉值一般用2的N次方(1 2 4 8......) 不能(1 2 3)因爲標誌每組可以自由組合 1+2=3 就衝突了
下面將其十進制轉化成爲二進制說明就可以明白點

[Flags]//表示標誌枚舉 ,標誌枚舉的特性,加上這特性 枚舉類型.tostring(),返回的就是文字了,不是數字
    public enum GoodPeople
    {
        //標誌枚舉是需要設置固定的值的,要是不設置值得話,兩個項的或運算就會混亂
        //值必須是2的次方
        //普通枚舉是互斥的,但對於標誌枚舉是可以組合的,
        高 = 1,
        富 = 2,
        帥 = 4,
        白 = 8,
        美 = 16
    }

參考

https://www.cnblogs.com/thatday/p/3485112.html#:~:text=標誌枚舉在聲明枚舉前加 [flag] 枚舉值一般用2的N次方(1 2 4,8......) 不能(1 2 3)因爲標誌每組可以自由組合 1%2B2%3D3 就衝突了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章