相关疑难解决方法(0)

[Flags]枚举属性在C#中意味着什么?

我不时会看到如下的枚举:

[Flags]
public enum Options 
{
    None    = 0,
    Option1 = 1,
    Option2 = 2,
    Option3 = 4,
    Option4 = 8
}
Run Code Online (Sandbox Code Playgroud)

我不明白[Flags]-attribute 到底是做什么的.

任何人都可以发布一个很好的解释或示例?

c# enums flags

1383
推荐指数
12
解决办法
46万
查看次数

枚举上最常见的C#按位操作

对于我的生活,我不记得如何设置,删除,切换或测试位域中的位.要么我不确定,要么混淆它们,因为我很少需要这些.因此,"比特作弊表"会很好.

例如:

flags = flags | FlagsEnum.Bit4;  // Set bit 4.
Run Code Online (Sandbox Code Playgroud)

要么

if ((flags & FlagsEnum.Bit4)) == FlagsEnum.Bit4) // Is there a less verbose way?
Run Code Online (Sandbox Code Playgroud)

您能举例说明所有其他常见操作,最好是使用[Flags]枚举的C#语法吗?

.net c# enums flags bit-manipulation

197
推荐指数
9
解决办法
16万
查看次数

标签 统计

c# ×2

enums ×2

flags ×2

.net ×1

bit-manipulation ×1