News for hackers. Stuff that matters.
Re:A half-hour to learn Rust by e_proxus on Sunday March 01, 2020 @06:13AM (#22456363)
So is drop like free, or is it something else?
Re:A half-hour to learn Rust by cyphar on Sunday March 01, 2020 @08:07AM (#22456706)
Yes, it's effectively like free -- though C++'s "auto" is probably a closer idea.

The main difference to C's free is that you simply cannot double-free a value (without using unsafe). That's because a value is only dropped when it falls out of scope -- and since it values only have one owner (and references must not outlive values) there cannot be any dangling references after it's dropped.

The documentation for std::mem::drop is explaining that dropping a value is a property of the language and scoping rules -- thus there is nothing for the function to do other than take a value and let it go out of scope.

Re:A half-hour to learn Rust by pixel_fcker on Sunday March 01, 2020 @12:13PM (#22457812)
It’s more like delete in c++ because you can implement the Drop trait for a type in order to run code when it is dropped in order to clean up resources etc.
Re:A half-hour to learn Rust by kzrdude on Sunday March 01, 2020 @04:29PM (#22459499)
Drop is just what runs when a value goes out of scope. Like destructors in C++.