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