Перенос значения в новую переменную в Rust
Запись готового вектора во вторую переменную забирает список у первого имени. Хозяин меняется: новая переменная отвечает за данные, а старая больше не считается действительной для этого значения.
После такой записи обращаться к первому имени нельзя. Компилятор отмечает ошибку, если попытаться прочитать или изменить список через старое имя:
let a = vec![1, 2];
let b = a;
println!("{}", a[0]);
Такой фрагмент не собирается: a уже
не владеет вектором. Работать можно через
b, пока это имя живет в блоке:
let a = vec![1, 2];
let b = a;
println!("{}", b[0]);
println!("{}", b.len());
Дан следующий код:
let first = vec![3, 4];
let second = first;
println!("{}", first.len());
Скажите, соберется ли программа.
Дан следующий код:
let x = vec![10, 20];
let y = x;
Выведите длину списка через оставшееся имя переменной.
Объявите вектор с числами 5 и 6,
запишите его во вторую переменную и
выведите первый элемент только из второй.