>
>
>
V2007. This expression can be simplifie…


V2007. This expression can be simplified. One of the operands in the operation equals NN. Probably it is a mistake.

Данное диагностическое правило добавлено по просьбе пользователей.

Анализатор позволяет обнаружить ряд мест с подозрительными бинарными операциями, где можно упростить код для повышения его читаемости.

Подозрительные бинарные операции:

  • '^', '+', '-', '<<', '>>', где один из операндов равен 0;
  • '&', где один из операндов равен -1;
  • '*', '/', '%', где один из операндов равен 1.

Диагностическое правило V2007 помогает выполнять рефакторинг кода и иногда выявлять ошибки.

Примеры конструкций, на которые анализатор выдаст данное диагностическое сообщение:

int X = 1 ^ 0;
int Y = 2 / X;

Приведённый код можно упростить. Пример корректного кода:

int X = 1;
int Y = 2;

Для сокращения количества ложных сообщений, есть несколько исключений. Например, диагностическое сообщение V2007 не выдаётся в случае, если подозрительное выражение находится в макросе или является индексом массива.

Данная диагностика классифицируется как: