﻿# V561\. Consider assigning value to 'foo' variable instead of declaring it anew\.

Анализатор обнаружил потенциально возможную ошибку, найдя в коде переменную, которая объявляется и инициализируется, но далее не используется\. При этом во внешней области видимости имеется переменная, имеющая такое же имя и такой же тип\.  Высока вероятность, что следовало использовать уже имеющуюся переменную, а не объявлять новую\.

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

```cpp
BOOL ret = TRUE;
if (m_hbitmap)
  BOOL ret = picture.SaveToFile(fptr);
```

Программист случайно объявил новую переменную 'ret', в результате чего предыдущая всегда будет иметь значение TRUE, вне зависимости от того успешно будет сохранена картина в файл или нет\. Исправленный вариант кода:

```cpp
BOOL ret = TRUE;
if (m_hbitmap)
  ret = picture.SaveToFile(fptr);
```