本文主要是介绍rust变量遮蔽(variable shadow)不影响其正常析构行为和顺序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
上代码:
use std::ops::Drop;struct D(i32);impl Drop for D {fn drop(&mut self){println!("destruct {}", self.0);}
}fn main() {let _x = D(1);let _x = D(2); //_x被遮蔽了(variable shadow here)println!("-----------");
}//运行程序,注意查看fn drop的输出,即可知道结论。
/*-----------
destruct 2
destruct 1
*/
//实践出真知。
文章标题即是我的结论,如有谬误希望指教。
这篇关于rust变量遮蔽(variable shadow)不影响其正常析构行为和顺序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!