有時候我們需要提前drop一些對象(釋放內存),本節就是講怎麼做這個。例子:
struct Dog {
name: String,
}
impl Drop for Dog {
fn drop(&mut self) {
println!("{} leave", self.name);
}
}
// rust提供了std::mem::drop()
fn main() {
let a = Dog {
name: String::from("wangcai"),
};
let b = Dog {
name: String::from("dahuang"),
};
// b.drop();
drop(b);
drop(a);
println!("0 ++++++++++++++++++++++");
}
本節全部源代碼:
https://github.com/anonymousGiga/learn_rust/blob/master/learn_drop1/src/main.rs