Скажем, у меня есть это перечисление:
[Flags]
enum Letters
{
A = 1,
B = 2,
C = 4,
AB = A | B,
All = A | B | C,
}
Чтобы проверить, установлен ли, например, AB
, я могу сделать это:
if((letter & Letters.AB) == Letters.AB)
Есть ли более простой способ проверить, установлен ли какой-либо из флагов объединенной константы флага, чем следующий?
if((letter & Letters.A) == Letters.A || (letter & Letters.B) == Letters.B)
Не могли бы вы, например, обменять &
на что-то?
Не слишком стабильно, когда дело доходит до двоичного файла вроде этого...