Share via


C6287

업데이트: 2007년 11월

C6287

경고 C6287: 코드가 중복됩니다. 왼쪽 부분식과 오른쪽 부분식이 동일합니다.

이 경고는 식에 중복되는 요소가 있음을 나타냅니다.

코드를 검사하지 않고는 이 문제의 심각도를 판단하기 어렵습니다. 자체적인 중복 테스트는 무해하지만 두 번째 테스트를 삭제하면 심각한 결과가 나타날 수 있습니다. 코드를 검사하여 테스트가 생략되지 않도록 해야 합니다.

예제

다음 코드에서는 이 경고를 발생시킵니다.

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