Rust 什么是';静态作为函数约束?

Rust 什么是';静态作为函数约束?,rust,lifetime,Rust,Lifetime,在这种情况下,静态的含义是什么 fn foo放置一个像T:'a这样的约束意味着T类型的所有生存期参数都必须满足生存期约束'a(因此,必须超过它) 例如,如果我有这个结构: struct-Kate{ 地址:&'a街, 姓氏:&'b str } Kate将满足约束F:Human+'static仅当'a=='static和'b=='static时 但是,没有任何生存期参数的结构将始终满足任何生存期约束 作为总结,类似于F:'static的约束意味着: F没有生存期参数 F的所有生存期参数都是静态的

在这种情况下,静态的含义是什么


fn foo放置一个像
T:'a
这样的约束意味着
T
类型的所有生存期参数都必须满足生存期约束
'a
(因此,必须超过它)

例如,如果我有这个结构:

struct-Kate{
地址:&'a街,
姓氏:&'b str
}
Kate
将满足约束
F:Human+'static
仅当
'a=='static
'b=='static

但是,没有任何生存期参数的结构将始终满足任何生存期约束

作为总结,类似于
F:'static
的约束意味着:

  • F
    没有生存期参数
  • F
    的所有生存期参数都是
    静态的

哦,是的,的确如此。谢谢
fn main() {
    let kate = Kate { age: 30 };
    foo(kate);
}
static global_variable: i32 = 5;