Warnung C26813
Verwenden Sie "bitweise" und überprüfen Sie, ob ein Flag festgelegt ist.
Hinweise
Die meisten enum
Typen mit der Leistungsfähigkeit von zwei Memberwerten sollen als Bitkennzeichnungen verwendet werden. Daher möchten Sie diese Flags selten für gleichheitsgerecht vergleichen. Extrahieren Sie stattdessen die Bits, an denen Sie interessiert sind, indem Sie bitweise Vorgänge verwenden.
Codeanalysename: USE_BITWISE_AND_TO_CHEK_ENUM_FLAGS
Beispiel
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;
}
Verwenden Sie bitweise Vorgänge, um die Warnung zu beheben:
void useEqualsWithBitwiseEnum(BitWise a)
{
if (a & B) // Fixed.
return;
}
Siehe auch
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Tickets als Feedbackmechanismus für Inhalte auslaufen lassen und es durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter:Einreichen und Feedback anzeigen für