【发布时间】:2015-05-03 10:53:11
【问题描述】:
我正在尝试从我的函数内部构建的向量返回一个切片。显然这不起作用,因为v 的生命周期过早到期。我想知道是否有办法延长v 的生命周期。我想返回一个普通的切片,而不是一个向量。
pub fn find<'a>(&'a self, name: &str) -> &'a[&'a Element] {
let v: Vec<&'a Element> = self.iter_elements().filter(|&elem| elem.name.borrow().local_name == name).collect();
v.as_slice()
}
【问题讨论】: