﻿# V2561\. MISRA\. The result of an assignment expression should not be used\.

Данное диагностическое правило основано на руководстве [MISRA](https://www.misra.org.uk/) \(Motor Industry Software Reliability Association\) по разработке программного обеспечения\.

Использование присвоения в подвыражениях привносит дополнительный побочный эффект, что уменьшает читаемость кода и повышает шанс внесения новой ошибки в код\.

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

Пример кода, на который анализатор выдаст предупреждения:

```cpp
int Inc(int i)
{
  return i += 1; // <=
}

void neg(int a, int b)
{
  int c = a = b; // <=

  Inc(a = 1);    // <=

  if(a = b) {}   // <=
}
```