﻿# V726\. Attempt to free memory containing the 'int A\[10\]' array by using the 'free\(A\)' function\.

Анализатор обнаружил ошибочный код, в котором осуществляется попытка удаления массива через функцию free\(\) или схожую с ней\. При этом, память под этот массив не была выделена при помощи специальных функций, таких как malloc\(\)\. Подобные действия являются причиной неопределённого поведения\.

Пример:

```cpp
class A
{
  int a[50];
  public:
    A(){}
    ~A(){ free(a); }
};
```

Так как память не была выделена каким\-то специальным образом, не стоит также и вызывать каких\-либо специальных функций для её очистки – она будет произведена автоматически при уничтожении объекта\. Следовательно, в данном случае корректный код должен был выглядеть следующим образом:

```cpp
class A
{
  int a[50];
  public:
    A(){}
    ~A(){}
};
```