Уникальный указатель освободит память?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Уникальный указатель освободит память?

Сообщение Anonymous »

Допустим, вы выделяете объект и передаете адрес в сообщении Windows (опубликовано, а не отправлено). В обработчике сообщений адрес восстанавливается и используется для инициализации std :: unique_ptr . Удал ли деструктор умного указателя объект? < /P>

Код: Выделить всё

auto* data = new BackupStatusMsg{ pct, st, e1, e2, msg };
::PostMessage(m_hWnd, WM_BACKUP_STATUS, 0, reinterpret_cast(data));
< /code>
и в методе обработчика: < /p>
LRESULT DialogClass::OnSomething(WPARAM, LPARAM lp)
{
std::unique_ptr p(reinterpret_cast(lp));

// .....

return 0;
}
Будет ли этот объект удален при возвращении ?

Подробнее здесь: https://stackoverflow.com/questions/796 ... the-memory
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»