T: 'a
结构体中的推导
一个注释形式为 T:'a
,其中 T
可以是一个类型或另一个生命周期,被称为 “outlives” 要求。
注意 “outlives” 也意味着 'a:'a
。
考虑下面这个 struct
定义,在 Rust 2015 中:
struct Ref<'a, T> {
field: &'a T
struct WhereRef<'a, T> {
data: &'a T
field: &'a &'b T,
}
struct ItemRef<'a, T: Iterator> {
field: &'a T::Item
如果您希望在某些情况下更明确,那仍然是可能的。