Rust 是否有方法获取对Vec可变子切片的引用<;T>;?

Rust 是否有方法获取对Vec可变子切片的引用<;T>;?,rust,slice,Rust,Slice,我想预先分配一个向量,然后将其写入各个部分,包括,它将buf:&mut[u8]作为参数 // Create a vec with 256MB capacity let mut myvec: Vec<u8> = Vec::with_capacity(268435456); // Grow the vec to 256MB and initialize it with zeroes myvec.resize(268435456, 0x00); // Try to get a mut

我想预先分配一个向量,然后将其写入各个部分,包括,它将
buf:&mut[u8]
作为参数

// Create a vec with 256MB capacity
let mut myvec: Vec<u8> = Vec::with_capacity(268435456);

// Grow the vec to 256MB and initialize it with zeroes 
myvec.resize(268435456, 0x00);

// Try to get a mutable slice of the first 1kb of the vec
let body_slice: &mut [u8] = myvec[10..1034];
你想要这个:

let body_slice: &mut [u8] = &mut myvec[10..1034];

太好了,泰文。应该很明显,但是[]语法让我很困惑,我看不到一个很好的参考。作为参考,这里是or非糖版本。我认为随着RFC#439()的出现,这个答案很快就会过时。如果我没有看错的话,完成后,
&mut myvec[10..1034]
应该会像预期的那样工作。截至最近的晚上,接受的答案和rfc439方法似乎都不起作用。我现在唯一能让它工作的方法就是使用&mut*myvec{10..1034]我不能用到目前为止提到的三种方法中的任何一种让它工作,哈哈