Udostępnij za pośrednictwem


C6336

Ostrzeżenie C6336: operator arytmetyczny ma pierwszeństwo przed operatorem pytania, należy użyć nawiasów w celu wyjaśnienia intencji

To ostrzeżenie wskazuje możliwy problem pierwszeństwa operatora.Operatory '+','-','*' i '/' mają pierwszeństwo przed operatorem '?' .Jeśli pierwszeństwo w wyrażeniu nie jest poprawne, należy używać nawiasów, aby zmienić pierwszeństwo operatorów.

Przykład

Poniższy kod generuje to ostrzeżenie:

int Count();

void f(int flag)
{
  int result;
  result = Count() + flag ? 1 : 2;
  // code...
}

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

int Count();

void f(int flag)
{
  int result;
  result = Count() + (flag ? 1 : 2);
  // code...
}

Zobacz też

Informacje

Priorytet i łączność operatorów