Possible Duplicate:
When you use flag(Enum) you have a limit of 64. What are the alternative when you reach the limit?
I have the following [Flags] enum
that has to contain 33 elements:
[Flags]
public enum Types
{
None = 0,
Alarm = 1,
Exit = 2,
Panic = 4,
Fire = 8,
Tamper = 16,
Key = 32,
Line = 64,
FTC = 128,
Unused = 256,
tech_1 = 512,
//... tech_2 through _7 omitted for brevity
tech_8 = 65536,
fire_1 = 131072,
//... fire_2 through _11 omitted for brevity
fire_12 = 268435456,
Key = 536870912,
Exit = 1073741824,
Gas = 2147483648, // Cannot convert source type uint to target type int
}
The value for the last item appears to be too large. Has anyone dealt with this before? Any ideas how this can be resolved / worked around?
You can specify the type of the enum to be something with a greater range.
[Flags]
public enum Types : long