требует разнесения mutable / immutable доступа к v?
fn decode_dense<T: AddAssign + Copy>(dense: &[T]) -> Vec<T> {
let mut v = Vec::from(dense);
for i in 1..v.len() {
let t = v[i-1];
v[i] += t;
}
v
}
(если написать v[i] += v[i-1] то ругается cannot borrow `v` as immutable because it is also borrowed as mutable)
А тут https://pastebin.com/UMzSSw3u - не требует (для ids)
?
Потому что ссылка на элемент получена из ссылки на вектор = &mut vec должен быть жив, пока жив &mut el
Обсуждают сегодня