在Programming Rust的第 295 页上,您可以找到以下内容:
幸运的是,标准库包含一揽子实现:
impl<'a, T, U> AsRef<U> for &'a T where T: AsRef<U>, T: ?Sized, U: ?Sized, { fn as_ref(&self) -> &U { (*self).as_ref() } }
我对&'a
那里的使用感到困惑。那是什么背景?它既没有用于 的参数,as_ref
也没有与 . 的输出相关联&U
。在这种情况下使用时,我认为我并不完全理解生命周期。
我查了这个,因为我仍然不明白,答案仍然没有点击(有意义)。我发现convert.rs
。这似乎在任何地方都没有任何生命周期,但它实现了这个AsRef
特征。那么为什么这本书有这个,而不是 Rust 中的实际代码呢?在哪里可以找到书中提到的“一揽子实施”?