Ownership Caves · Copy or move?
fn main() {
let a = 5;
let b = a;
let s1 = String::from("hi");
let s2 = s1;
println!("{} {}", a, b);
println!("{}", s2);
}
Answer: A
i32 is Copy, so a and
b both hold 5. s1 was
moved into s2, but s1 is never
used again, so there's no error. Moving isn't a problem by
itself; only using the old name afterwards is.