有时候我们需要提前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