Rust中的生命周期注解 - 学习笔记

Rust生命周期注解是为了保证【依赖有效】

简单地说:假设变量a依赖于b,那么b的生命周期应该大于a,否则不安全。

 

Rust中生命周期注解的用法

示例1

// 通过'a标注相同的生命周期

fn greater<'a>(str1: &'a str, str2: &'a str) -> &'a str {
  if str1 > str2 {
    str1
  } else {
    str2
  }
}

fn main() {
  println!("{}", greater("a", "b"));
}

 

示例2

#[derive(Debug)]
#[allow(dead_code)]

struct Person<'a> {
  name: &'a str,
}

fn main() {
  let p = Person { name: "rose" };
  println!("{:?}", p);
}

 

posted @ 2022-12-31 17:32  樊顺  阅读(289)  评论(0编辑  收藏  举报