Rust 特征有一个终生参数意味着什么?
我理解生命周期参数是如何应用于函数和结构的,但是对于特征来说,生命周期参数意味着什么?将生存期参数引入其方法是一种快捷方式,还是其他方式?如果您有一个具有生存期限制的特征,那么该特征的实现者可以参与相同的生存期。具体地说,这允许您存储具有该生命周期的引用。它是而不是指定成员方法生命周期的快捷方式,困难和混乱的错误消息就在于此Rust 特征有一个终生参数意味着什么?,rust,traits,lifetime,Rust,Traits,Lifetime,我理解生命周期参数是如何应用于函数和结构的,但是对于特征来说,生命周期参数意味着什么?将生存期参数引入其方法是一种快捷方式,还是其他方式?如果您有一个具有生存期限制的特征,那么该特征的实现者可以参与相同的生存期。具体地说,这允许您存储具有该生命周期的引用。它是而不是指定成员方法生命周期的快捷方式,困难和混乱的错误消息就在于此 trait Keeper&a u8; } SimpleKeeper的结构SimpleKeeper和'a u8{ self.val } } 请注意,结构和特征是如何在生命周
trait Keeper&a u8;
}
SimpleKeeper的结构SimpleKeeper和'a u8{
self.val
}
}
请注意,结构和特征是如何在生命周期中参数化的,并且生命周期是相同的
对于SimpleKeeper,save()
和restore()
的非特征版本会是什么样子{
val:&'a u8,
}
恳求{
fn保存(&M自我,v:&a u8){
self.val=v
}
fn恢复(&self)->&a u8{
self.val
}
}
他们的意思会和特质版本完全一样吗
是的 还是有点模糊。对于SimpleKeeper,save()和restore()的非特征版本会是什么样子?fn save,v:&'a u8){keep.val=v}fn restore)->&'a u8{keep.val}@goertzenator我试图回答。重要的一点是,结构也用生命周期参数化。