Generics 如何通过Vec<;T>;当需要特征搜索时,是否对函数进行搜索?
我有一个API,我需要将Generics 如何通过Vec<;T>;当需要特征搜索时,是否对函数进行搜索?,generics,rust,traits,Generics,Rust,Traits,我有一个API,我需要将Vec传递给它,它需要它的参数来实现std::io::Seek: fn some_func<T: Seek + Write>(foo: &mut T) {/* body */} fn一些函数(foo:&mut T){/*body*/} 板条箱作者建议在此处使用文件,但我希望在此处避免使用该文件,因为它会导致不必要的文件创建。Vec满足Write特性,但不满足Seek特性。有没有办法避免在此处使用文件?您可以将Vec包装成: 让mut buf:Cur
Vec
传递给它,它需要它的参数来实现std::io::Seek
:
fn some_func<T: Seek + Write>(foo: &mut T) {/* body */}
fn一些函数(foo:&mut T){/*body*/}
板条箱作者建议在此处使用
文件
,但我希望在此处避免使用该文件,因为它会导致不必要的文件创建。Vec
满足Write
特性,但不满足Seek
特性。有没有办法避免在此处使用文件
?您可以将Vec
包装成:
让mut buf:Cursor=Cursor::new(Vec::new());
一些函数(&mut buf);
let mut buf: Cursor<Vec<u8>> = Cursor::new(Vec::new());
some_func(&mut buf);