Поразрядное вычитание

Учитывая перечисление:

[Flags]
enum foo
{
a = 1,
b = 2,
c = 4
}

then

foo example = a | b;

Если я не знаю, содержит ли foo c , ранее я писал следующее

if (example & foo.c == foo.c)
    example  = example ^ foo.c;

Есть ли способ сделать это, не проверяя наличие foo.c в ] example ?

Что касается дополнений, я могу просто выполнить OR , и если значение enum уже существует в example , тогда это не имеет значения.

10
задан maxp 23 September 2011 в 08:44
поделиться