kzhereb / knu-is-ooop2019

Materials for "Fundamentals of OOP" course
MIT License
3 stars 0 forks source link

T10.21. Як можна знищити об’єкт? #21

Open WAG13 opened 4 years ago

trilloner commented 4 years ago

Потрібно використовувати локальні змінні, деструктори яких будуть викликані автоматично при виході з функції.

solovdaria commented 4 years ago

Об'єкт знищується при спрацьовуванні деструктора. Це відбувається при автоматичному виході об'єкта з області видимості. Динамічно виділений об'єкт можна знищити за допомогою слова delete - буде також викликано деструктор.

AntonHladkiy commented 4 years ago

Об'єкт знищується після спрацювання деструктора. Це відбудеться автоматично коли об'єкт вийде з області видимості. Об'єкт створений словом new можна видалити за допомогою delete.

RostyslavMV commented 4 years ago

Об'єкт знищується за допомогою деструктора. Видаляється автоматично при виході об'єкта з області видимості. Динамічні об'єкти видаляються за допомгою delete. Також в деяких мовах можна запустити очистку сміття в пам'яті вручну.

i1red commented 4 years ago

Для знищення об'єкту викликається деструктор. Для об'єктів створених динамічно використовують delete(або обертають у smart pointer), для інших виклик деструктора відбувається автоматично, коли об'єкт зникає з області видимості

ilyakorenevskyi commented 4 years ago

Об'єкт знищується при роботі деструктора. Наприкрад, якщо створити покажчик на об'єкт за допомогою new, а потім знищити за допомогою delete, або при виході зі skope автоматично

WAG13 commented 4 years ago

За допомогою деструктора. Для покажчика на об'єкт використовуємо delete.