[英]CLR - Declare enum with "Flags" attribute
我在 CLR/CLI 中有以下枚舉:
public enum class Days
{
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
};
在 C# 中,如果我想創建選定枚舉的組合,我曾經在枚舉的聲明之前添加[Flags]
屬性。
C++ CLR 中是否存在類似的東西?
所述FlagsAttribute
在C#只是表明枚舉可以作為一個位域進行處理。
真正重要的是您適當地定義枚舉值,以便可以對它們執行 AND、OR、NOT 和 XOR 按位運算,即您應該為每個枚舉值分配 2 的下一個更大的冪:
public enum class Days
{
Sunday = 1,
Monday = 2,
Tuesday = 4,
Wednesday = 8,
Thursday = 16,
Friday = 32,
Saturday = 64
};
[Flags]
不會自動使枚舉值成為 2 的冪。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.