Sdílet prostřednictvím


C6315

upozornění C6315: chybné pořadí operací: bitová operace AND má vyšší prioritu než bitová operace OR.Přidejte závorky pro upřesnění záměru

Toto upozornění znamená, že výraz v testovacím kontextu obsahuje bitovou operaci AND (&) i OR (|), jehož výsledkem je konstanta, protože je bitová operace OR provedena poslední.Pro objasnění úmyslu by měly být použity závorky.

Příklad

Následující kód generuje toto upozornění:

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

Chcete-li opravit toto upozornění, přidejte závorky tak, jak je ukázáno následujícím kódem:

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