164得票19回答
如何迭代具有标志的枚举值?

如果我有一个变量持有一个标志枚举,我是否可以以某种方式迭代该特定变量中的单个位值?或者我必须使用Enum.GetValues遍历整个枚举并检查哪些被设置了?

136得票7回答
为什么标志枚举通常使用十六进制值定义?

很多时候我看到使用十六进制值来声明标志枚举。例如:[Flags] public enum MyEnum { None = 0x0, Flag1 = 0x1, Flag2 = 0x2, Flag3 = 0x4, Flag4 = 0x8, Flag...

47得票5回答
如何设置枚举标志的所有位

我想知道一种通用的方式来将 enum 标志的所有位设置为1。我希望有一个enum, 无论与其他枚举值做比较时如何,它都会返回相同的结果。以下代码可以实现此功能:[Flags] public enum SomeRightEnum : uint { CanDoNothing = 0, ...

37得票6回答
模型绑定枚举标志列表

我有一个枚举标志的网格,每条记录都是一组复选框,用于确定该记录的标志值。 这是系统提供的通知列表,用户可以选择他们想要以怎样的方式接收:[Flag] public enum NotificationDeliveryType { InSystem = 1, Email = 2, Te...

36得票6回答
枚举标志和位运算 vs. “比特串”

一位开发者建议我们将一周中的某些天存储为由1和0组成的7个字符的字符串,例如“1000100”代表星期一和星期五。我更喜欢(并强烈建议)使用 Flags 枚举和按位操作来解决,我认为这是一种更清晰的方式,并且应该更容易被其他开发者理解。 [Flags()] public enum Wee...

36得票7回答
在枚举中,对于值为None(0)的情况,HasFlags始终返回true。

这是枚举类型的定义:[Flags] enum Animals { None = 0, Dog = 1, Cat = 2, Horse = 4, Zebra = 8, } 现在,鉴于以下代码,请问为什么HasFlag方法会针对Animals.None值返回...

34得票2回答
在XAML中设置多个枚举标志

有没有办法在XAML中设置多个枚举标志(通常在代码后端使用“|”分隔)?我尝试过以下方式:<ns:SomeControl Flags="FlagA|FlagB" /> 但是那没起作用。

31得票2回答
FlagsAttribute枚举问题

所以,我正在构建一个MSNP(Windows Live Messenger)客户端。而我有这个功能列表。public enum UserCapabilities : long { None = 0, MobileOnline = 1 << 0, MSN8Us...

21得票5回答
追求更好的位标志枚举

好的,所以我们现在已经到了 C++ 17,但仍然没有一个令人满意的位标志界面。 我们有 enum,它会将成员值流入封闭范围,但会隐式地转换为其基础类型,因此可以像位标志一样使用,但拒绝在不进行强制转换的情况下重新分配回枚举。 我们有 enum class ,它解决了名称空间问题,使它们的...

17得票11回答
C#,标志枚举,查找标志的通用函数

我希望有一个通用的函数,可以与任何标志风格的枚举一起使用,以查看是否存在标志。 这段代码无法编译,但如果有人有建议,我会很感激。 public static Boolean IsEnumFlagPresent<T>(T value,T lookingForFlag) ...