Довольно простой вопрос, но я новичок в Rust/C/С++ и т.д. Я понимаю, что у Rust нет сборщика мусора, и мне интересно, как освобождается память, когда привязка выходит за рамки.
Итак, в этом примере я понимаю, что Rust восстанавливает память, выделенную "a", когда она выходит из области видимости.
{
let a = 4
}
Проблема, с которой я столкнулась, - это, во-первых, как это происходит, а во-вторых, разве это не какая-то сборка мусора? Как он отличается от "типичной" коллекции мусора?
Извинения, я знаю, что это несколько элементарно, но я исхожу из динамических языков.