﻿# V3524\. AUTOSAR\. The value of uninitialized variable should not be used\.

Данное диагностическое правило основано на руководстве [AUTOSAR](https://www.autosar.org/) \(AUTomotive Open System ARchitecture\) по разработке программного обеспечения\.

Если переменная POD\-типа не инициализируется явно и не имеет инициализатора по умолчанию, то её значение будет неопределённым\. Использование такого значения приведет к неопределенному поведению\. 

Простой синтетический пример: 

```cpp
int Aa = Get();
int Ab;
if (Ab) // Ab - uninitialized variable
  Ab = Foo();
else
  Ab = 0;
```

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

```cpp
int Aa = Get();
int Ab;
if (Aa) // OK
  Ab = Foo();
else
  Ab = 0;
```