提問
回答
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
}