30得票6回答
[Flags]属性到底是什么?

应用 [Flags] 到枚举类型有什么实际作用? 我知道它会修改 Enum.ToString 的行为,但除此之外还有其他作用吗?(例如:不同的编译器或运行时行为等) 编辑: 是的,我知道它 文档化了 枚举类型是用于按位标志的事实,并且将其应用于位标志更具逻辑性。我更想了解的是具体的行为...

26得票1回答
C#中的整数转换为标志枚举

可能是重复问题: C#将int转换为枚举类型 是否有办法将int转换为标志组合的枚举类型?因此,如果[Flags] public enum Foo {a = 0x80, b = 0x40, c = ..., ...

23得票3回答
C++中的类型安全(更安全)位标志?

在修订一些旧的C++代码时,我遇到了几个被定义为枚举类型的位标志。 enum FooFlags { FooFlag1 = 1 << 0, FooFlag2 = 1 << 1, FooFlag3 = 1 << 2 // etc...

17得票4回答
在Django管理界面中,如何表示一个位标志整数字段?

我有一个数据模型,其中定义了一个位域,类似于以下内容:alter table MemberFlags add column title varchar(50) not null default ''; alter table MemberFlags add column value integ...

14得票3回答
枚举是实现位标志的规范方式吗?

目前我正在使用枚举来表示一个小游戏实验中的状态。我像这样声明它们:namespace State { enum Value { MoveUp = 1 << 0, // 00001 == 1 MoveDown = 1 << 1, // 00010 ==...

13得票4回答
遍历 @IntDef、@StringDef 或任何 @Def 类中的值

考虑这个类: public class MyClassOfMystery { public static final int NO_FLAGS = ~0; public static final int FIRST_FLAG = 1; public static f...

10得票6回答
.NET框架中位标志的实际用途

我在研究如何使用flags属性和位运算符将枚举用作位标志(见下文)。 是否有任何.NET框架中使用这种模式的地方?我喜欢这个想法,但希望看到更多实际示例。[Flags] enum Days2 : int { None = 0x0, Sunday = 0x1, Monday = ...

10得票2回答
如何定义一个枚举,其中多个值映射到一个标签?

为了举例说明,假设我正在尝试解析一个文件,该文件指定记录中的两个任意字节表示一周中的某一天,如下:DayOfWeek: - 0 = Monday - 1 = Tuesday - 2 = Wednesday - 3 = Thursday - 4 = Fr...

9得票2回答
简单的布尔运算符用于位标志

我希望能了解更多关于这方面的知识,以便在我的项目中实现。 目前我已经有了基本的了解: unsigned char flags = 0; //8 bits flags |= 0x2; //apply random flag if(flags & 0x2) { printf(...

8得票6回答
为什么带有 [Flag] 标记的枚举从0开始递增1?

编辑:看起来大多数人误解了我的问题。 我知道枚举是如何工作的,我也知道二进制。我想知道带有 [Flags] 属性的枚举为什么要设计成这样。 原始帖子: 这可能是重复的,但我没有找到其他帖子,所以就发一下。 我敢打赌,它背后肯定有一些很好的理由,只是我觉得它有点容易出错。 [Flag]...