C6314
警告 C6314: 操作の順序が不適切です: 条件式の演算子よりもビットごとの or が優先されます。意思を明確にするためにかっこを追加してください
このメッセージは、ビットごとの OR 演算子 (|) を含む式が、テストされた条件演算 (?:) の式で検出されたことを示します。
条件演算子の優先順位は、ビットごとの演算子よりも下になります。テストされた式にビットごとの OR 演算子を含める必要がある場合は、条件式をかっこで囲んでください。
使用例
この警告が発生するコード例を次に示します。
int SystemState();
int f(int SignalValue)
{
return SystemState() | (SignalValue != 0) ? 1 : 0;
}
この警告を解決するには、次のコードを使用します。
int SystemState();
int f(int SignalValue)
{
return SystemState() | ((SignalValue != 0) ? 1 : 0);
}