Вебинар: Go-Go-Gadg...Error? Смотрим, как ошибаются Go разработчики! - 26.08
Анализатор обнаружил потенциальную ошибку при использовании тернарного оператора ?:. Независимо от условия выполняется одно и то же действие. Скорее всего, в коде допущена опечатка либо он избыточен.
Рассмотрим простой пример:
let result = flag ? x : x;
В этом примере переменной result всегда присваивается значение переменной x. Вероятно, предполагалось использование другой переменной:
let result = flag ? x : y;
Учитываются также не идентичные, но эквивалентные выражения. Например, на данный фрагмент кода:
let result = flag ? x * y : y * x;
Будет выдано предупреждение, так как операция умножения является коммутативной, и результат окажется одинаковым.
Диагностическое правило классифицируется как:
Взгляните на примеры ошибок, обнаруженных с помощью диагностики V7012. |
Была ли полезна эта страница документации?
Мы ответим вам на:
Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок: