4.2 生命周期 lifetime
生命周期
- 避免
dangling referfence(避免悬垂引用) - rust中所有的引用都有自己的生命周期,表示引用有效的作用域
- 一般为隐式的,但不可推断时会报错,需要手动标注生命周期
手动标识生命周期
-
fn longest(x: &str, y: &str) -> &str -
生命周期最短的为有效
-
尽量不要用
'static -
省略规则
- 每个引用类型的参数都有自己的生命周期
- 只有一个输入生命周期参数,那么输出生命周期就为该生命周期
- 有
&self或&mut self,那么输出生命周期就为该self生命周期
-
生命周期机制还在完善
\