﻿# V6015\. Consider inspecting the expression\. Probably the '\!\='/'\-\='/'\+\=' should be used here\.

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

**Оператор '\=\!'**

Пример подозрительного кода:

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

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

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

Анализатор учитывает форматирование в выражении\. Поэтому, если действительно требуется выполнить присваивание, а не сравнение, необходимо указать, используя скобки или пробелы\. Следующие примеры кода считаются анализатором корректными:

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

**Оператор '\=\-'**

Пример подозрительного кода:

```cpp
int size = ... ;
int delta ... ;
...
size =- delta;
```

Этот код может быть корректен\. Но с большой вероятностью имеется опечатка, и на самом деле хотели использовать оператор '\-\='\. Исправленный вариант:

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

Если код корректен, то, чтобы убрать предупреждение V6015 можно использовать дополнительный пробел между символами '\=' и '\-'\. Вариант корректного кода, где предупреждение не выдается:

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

**Оператор '\=\+'**

Пример подозрительного кода:

```cpp
int size = ... ;
int delta ... ;
...
size =+ delta;
```

Исправленный вариант:

```cpp
size+=delta;
```

Если код корректен, то чтобы убрать предупреждение V6015 можно удалить '\+' или поставить дополнительный пробел\. Вариант корректного кода, где предупреждение не выдается:

```cpp
size = delta;
size = +delta;
```