C6314
uyarı C6314: Hatalı işlem sırası: Bitsel-veya koşullu ifade işlecine göre daha yüksek önceliğe sahiptir.Amacı açıklamak için parantezler ekleyin
Bu ileti bir bitwise-or/bit seviyesi veya ( operatörünü içeren bir ifade gösterir|Bir koşullu işlemin sınanan ifadesinde ) algılandı (?:).
Koşul operatörleri bitsel operatörlerden daha düşük önceliğe sahiptir.Eğer sınanan ifade bitwise-or işleci içermeliyse, ardından koşullu ifadenin etrafına parantezler eklenmelidir.
Örnek
Aşağıdaki kod bu uyarıyı üretir:
int SystemState();
int f(int SignalValue)
{
return SystemState() | (SignalValue != 0) ? 1 : 0;
}
Bu uyarıyı düzeltmek için aşağıdaki kodu kullanın:
int SystemState();
int f(int SignalValue)
{
return SystemState() | ((SignalValue != 0) ? 1 : 0);
}