﻿# V7012\. The conditional expression always returns the same value\.

Анализатор обнаружил потенциальную ошибку при использовании тернарного оператора ?:\. Независимо от условия выполняется одно и то же действие\. Скорее всего, в коде допущена опечатка либо он избыточен\.

Рассмотрим простой пример:

```cpp
let result = flag ? x : x;
```

В этом примере переменной `result` всегда присваивается значение переменной `x`\. Вероятно, предполагалось использование другой переменной:

```cpp
let result = flag ? x : y;
```

Учитываются также не идентичные, но эквивалентные выражения\. Например, на данный фрагмент кода:

```cpp
let result = flag ? x * y : y * x;
```

Будет выдано предупреждение, так как операция умножения является коммутативной, и результат окажется одинаковым\.