在 Rust 语言中,一个变量的生命周期是与其变量的作用域绑定的,变量离开作用域时被自动销毁。
这里给出一个简单的模型;一对大括号为一个生命周期,除了括号之外,每一行包含以下两个操作之一:
let {var_ name} drop {var _ name}
其中:let 表示声明一个变量,{var_ name} 为变量名;drop 表示手动销毁一个变量,销毁的对象为变量名 {var_name} 。
在Rust语言中,变量的生命周期与其作用域绑定,退出作用域时自动销毁。我们用一个简化模型来模拟这一过程:
“{” 和 “}” 表示新开和结束一个作用域;
每行要么是
let name
:在当前作用域声明变量 name
,drop name
:在当前作用域手动销毁变量 name
。离开一个作用域时,若有未被 $drop$
的变量,则自动按“后声明先销毁”顺序销毁。