﻿# V7015\. Suspicious formatting of assignment and unary operators\.

Анализатор обнаружил подозрительное форматирование оператора присваивания и одного из унарных операторов: \!, \-, \+\. Скорее всего, их использование ошибочно, и подразумевался один из следующих операторов: \!\=, \-\=, \+\=\.

Анализатор считает подозрительным использование оператора присваивания и отрицания в условии:

```cpp
let a = .... ;
let b = .... ;
....
if (a =! b) { // <=
  ....
}
```

С большой вероятностью здесь должна быть проверка, что переменная `a` не равна `b`\. Если это так, то корректный вариант кода должен выглядеть следующим образом:

```cpp
if (a != b) {
  ....
}
```

Если действительно требуется выполнить присваивание, а не сравнение, для читаемости кода лучше исправить форматирование:

```cpp
if (a = !b)
  ....
```

Аналогичная ошибка может произойти с унарными операторами `+` и `-`, однако для них подозрительными считаются обычные выражения, а не условия\. Пример подозрительного кода:

```cpp
let size = ....;
let delta ....;
....
size =- delta;  // <=
```

Этот код может быть корректным, но в нём с высокой вероятностью допущена опечатка, и на самом деле разработчики хотели использовать оператор `-=`:

```cpp
size -= delta;
```