我下面有一个标志枚举。
[Flags]
public enum FlagTest
{
None = 0x0,
Flag1 = 0x1,
Flag2 = 0x2,
Flag3 = 0x4
}
我无法使if语句评估为true。
FlagTest testItem = FlagTest.Flag1 | FlagTest.Flag2;
if (testItem == FlagTest.Flag1)
{
// Do something,
// however This is never true.
}
我如何才能做到这一点?
None
一个值为零的标志。见msdn.microsoft.com/en-us/library/vstudio/...
&
经营者进行比较,|
就像是一个加法:1|2=3
,5|2=7
,3&2=2
,7&2=2
,8&2=0
。0
评估为false
,其他均为true
。