다음을 통해 공유


경고 C26813

'bitwise and'를 사용하여 플래그가 설정되었는지 확인합니다.

설명

enum 멤버 값이 두 개인 대부분의 형식은 비트 플래그로 사용됩니다. 따라서 이러한 플래그를 같음으로 비교하려는 경우는 거의 없습니다. 대신 비트 연산을 사용하여 관심 있는 비트를 추출합니다.

코드 분석 이름: USE_BITWISE_AND_TO_CHEK_ENUM_FLAGS

예시

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;
}

경고를 해결하려면 비트 연산을 사용합니다.

void useEqualsWithBitwiseEnum(BitWise a) 
{
    if (a & B) // Fixed.
        return;
}

참고 항목

C26827
C26828