но в функции drop() нет никакой логики, как происходит очистка?
Трейт дроп не связан с удалением памяти, занимаемой объектом
drop() же освобождает ресурсы, как не связан, не пойму
В нем можно очистить ресурсы или закрыть файл там, хз. Но сам объект будет удален вне зависимости от того, что в дропе
drop вызывается, когда объект уничтожается
Я просто не понимаю, если нам ничего не нужно писать в функции drop() и она по сути пуста, то как эта магия работает вообще, или эта функция просто как маркер для компилятора и он понимает что после её вызова тут нужно освободить ресурсы переданного объекта
Дроп это кастомная логика в момент перед удалением объекта
Понятно что там можно вписать кастомную логику, но как она триггерит именно освобождение ресурсов?
самому надо писать, самому освобождать ресурсы
Drop::drop() нельзя вызвать вручную
можно, drop(object)
Быстро исправился.
Глянь имплементацию)
Обсуждают сегодня