Upozornění C26813
Pomocí bitové bitové bitové operace zkontrolujte, jestli je nastavený příznak.
Poznámky
Většinatypůch enum
V důsledku toho zřídka chcete porovnat tyto příznaky rovnosti. Místo toho extrahujte bity, které vás zajímají, pomocí bitové operace.
Název analýzy kódu: USE_BITWISE_AND_TO_CHEK_ENUM_FLAGS
Příklad
enum BitWise
{
A = 1,
B = 2,
C = 4
};
void useEqualsWithBitwiseEnum(BitWise a)
{
if (a == B) // Warning C26813: Use 'bitwise and' to check if a flag is set
return;
}
Pokud chcete upozornění opravit, použijte bitové operace:
void useEqualsWithBitwiseEnum(BitWise a)
{
if (a & B) // Fixed.
return;
}