退出前自動執行的代碼。spa
struct CustomSmartPointer { data: String, } impl Drop for CustomSmartPointer { fn drop(&mut self) { println!("Dropping CustomSmartPointer with data `{}`!", self.data); } } fn main() { let c = CustomSmartPointer{data: String::from("my stuff")}; println!("CustomSmartPointer created."); drop(c); println!("CustomSmartPointer dropped before the end of main."); }