Rust 每日一题
给定下面的代码,它是否能够编译通过?如果不能,请解释原因。
use std::borrow::BorrowMut;
struct MyVec(Vec<i32>);
impl BorrowMut<[i32]> for MyVec {
fn borrow_mut(&mut self) -> &mut [i32] {
&mut self.0
}
}
fn main() {
let mut v = MyVec(vec![1, 2, 3]);
v.borrow_mut()[0] = 42;
}