Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
При выбросе исключения из конструктора необходимо помнить о неполной инициализации объекта.
Автоматически высвобождаются ресурсы, полученные в конструкторе до точки выброса исключения (локальные переменные, члены класса с автоматическим временем жизни). Ресурсы, выделенные динамически (например, через new
), но не обернутые в умные указатели, не будут автоматически освобождены, что приведет к утечке памяти.
Пример утечки памяти:
cpp
Пример с использованием умного указателя для предотвращения утечки:
cpp
При выбросе исключения из конструктора необходимо помнить о неполной инициализации объекта.
Автоматически высвобождаются ресурсы, полученные в конструкторе до точки выброса исключения (локальные переменные, члены класса с автоматическим временем жизни). Ресурсы, выделенные динамически (например, через new
), но не обернутые в умные указатели, не будут автоматически освобождены, что приведет к утечке памяти.
Пример утечки памяти:
cpp
Пример с использованием умного указателя для предотвращения утечки:
cpp
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.