次の方法で共有


警告 C6314

操作の順序が正しくありません。ビットごとの順序か、条件式演算子よりも優先順位が高くなります。 意思を明確にするためにかっこを追加してください

解説

このメッセージは、条件演算 (?:) のテストされた式内でビットごとの or 演算子 (|) を含む式が検出されたことを示します。

条件演算子の優先順位は、ビット処理演算子よりも低くなります。 テストされた式にビットごとの or 演算子含む必要がある場合は、条件式をかっこで囲む必要があります。

コード分析名: BITORVSQUESTION

この警告が発生するコード例を次に示します。

int SystemState();

int f(int SignalValue)
{
  return SystemState() | (SignalValue != 0) ? 1 : 0;
}

この警告を解決するには、次のコードを使用します。

int SystemState();

int f(int SignalValue)
{
  return SystemState() | ((SignalValue != 0) ? 1 : 0);
}

関連項目