Rust 返回从闭包内部借用的值
我想从Rust 返回从闭包内部借用的值,rust,borrow-checker,Rust,Borrow Checker,我想从文件中获取Vec: use std::fs::File; fn example(files: Vec<&File>) { let files_metadata: Vec<_> = files .iter() .map(|f| &f.metadata().unwrap()) .collect(); } 创建一个临时值并将其放置在地图中;是的,没错。。。所以不要那样做映射(| f | f.met
文件中获取Vec
:
use std::fs::File;
fn example(files: Vec<&File>) {
let files_metadata: Vec<_> = files
.iter()
.map(|f| &f.metadata().unwrap())
.collect();
}
创建一个临时值并将其放置在地图中;是的,没错。。。所以不要那样做<代码>映射(| f | f.metadata().unwrap())
。如果确实需要Vec[&Metadata]
,则需要基于中间Vec
构建它。否则,您将引用无效内存。@Shepmaster谢谢,这使我能够修复它