Информация об изменениях

Сообщение Re[2]: Локальные переменные от 17.08.2025 11:53

Изменено 17.08.2025 11:58 rg45

Re[2]: Локальные переменные
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Куда правильнее было бы по дефолту заносить либо предопределенные, либо случайные значения, а нулями инициализировать только при явном запросе (ключ компилятора, прагма, атрибут и т.п.).


Это приемлемо как отладочная мера (которая и так используется). А в релизной конфигурации это может оказаться лишней работой, которая чувствительно влияет на производительность. Ведь стандарт разрешает неинициализированную переменную инициализировать позже (например, через присваивание).
Re[2]: Локальные переменные
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Куда правильнее было бы по дефолту заносить либо предопределенные, либо случайные значения, а нулями инициализировать только при явном запросе (ключ компилятора, прагма, атрибут и т.п.).


Это приемлемо как отладочная мера (которая и так используется). А в релизной конфигурации это может оказаться лишней работой, которая чувствительно влияет на производительность. Ведь стандарт разрешает неинициализированную переменную инициализировать позже (например, через присваивание). Ведь не просто так в стандартную библиотеку вводится куча "uninitialized_..." алгоритмов, позволяющих избежать ненужной промежуточной инициализации.