次の方法で共有


C6287

警告 C6287: 重複するコードです: 左と右のサブ式が同一です

この警告は、式内で冗長な要素が検出されたことを示します。

コードを調べない限り、この問題の深刻性を判断することは困難です。重複のテスト自体では問題は発生しませんが、2 番目のテストを削除することで重大な結果を招く場合があります。コードを調べて、テストが省略されていないことを確認してください。

使用例

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

void f(int x)
{
  if ((x == 1) && (x == 1)) 
  {
    //logic 
  }
  if ((x != 1) || (x != 1))
  {
    //logic
  }
}

次に示す例では、この警告を修正するためにさまざまなメソッドを使用しています。

void f(int x, int y)
{
  /* Remove the redundant sub-expression: */
  if (x == 1) 
  {
     // logic 
  }
  if (x != 1) 
  {
    // logic
  }
  /* or test the missing variable: */
  if ((x == 1) && (y == 1))
  {
     // logic
  }
  if ((x != 1) || (y != 1))
  {
     // logic
  }
}