小编Fra*_*eng的帖子

Rust 如何结合它的多个生命周期?

代码如下:

fn inner<'a:'b, 'b>(x:&'a i32, _y:&'b i32) -> &'b i32 {
    x
}

fn main() {
  let a = 1;
  {
      let b = 2;
      inner(&b, &a);
      inner(&a, &b);
  }
}
Run Code Online (Sandbox Code Playgroud)

'a:'b函数中的边界inner意味着生命周期'a持续时间超过'b。在上面的例子中,变量的生命周期比ba。借用检查器在遇到inner(&b, &a). 但是,代码可以编译。有人可以提供一些解释吗?

rust

5
推荐指数
1
解决办法
97
查看次数

标签 统计

rust ×1