Udostępnij za pośrednictwem


C6315

Ostrzeżenie C6315: nieprawidłowa kolejność operacji: operator bitowy and ma wyższy priorytet niż operator bitowy or.Dodaj nawiasy, w celu wyjaśnienia intencji

Ostrzeżenie to wskazuje, że wyrażenie w kontekście testowym zawiera zarówno operator bitowy and (&), jak i operator bitowy or (|), ale powoduje stałą, ponieważ operator bitowy or występuje ostatni.Aby wyjaśnić intencję, powinny zostać dodane nawiasy.

Przykład

Poniższy kod generuje to ostrzeżenie:

void f( int i )
{
  if ( i & 2 | 4 ) // warning
  {
    // code
  }
}

Aby poprawić to ostrzeżenie, dodaj nawiasy, w sposób pokazany w poniższym kodzie:

void f( int i )
{
  if ( i & ( 2 | 4 ) )
  {
    // code
  }
}