diff --git a/exercises/move_semantics/move_semantics1.rs b/exercises/move_semantics/move_semantics1.rs index e2f5876d..d4adf0b7 100644 --- a/exercises/move_semantics/move_semantics1.rs +++ b/exercises/move_semantics/move_semantics1.rs @@ -6,11 +6,11 @@ fn main() { let vec0 = Vec::new(); - let vec1 = fill_vec(vec0); + let mut vec1 = fill_vec(vec0); println!("{} has length {} content `{:?}`", "vec1", vec1.len(), vec1); - vec1.push(88); + vec1.push(88); println!("{} has length {} content `{:?}`", "vec1", vec1.len(), vec1); } diff --git a/exercises/move_semantics/move_semantics2.rs b/exercises/move_semantics/move_semantics2.rs index bd21fbb7..ca586b0b 100644 --- a/exercises/move_semantics/move_semantics2.rs +++ b/exercises/move_semantics/move_semantics2.rs @@ -6,20 +6,19 @@ fn main() { let vec0 = Vec::new(); - - let mut vec1 = fill_vec(vec0); - + let mut vec1 = fill_vec(&vec0); + vec0.push(2); // Do not change the following line! println!("{} has length {} content `{:?}`", "vec0", vec0.len(), vec0); - + println!("{:?}",vec0); vec1.push(88); println!("{} has length {} content `{:?}`", "vec1", vec1.len(), vec1); } -fn fill_vec(vec: Vec) -> Vec { - let mut vec = vec; - +fn fill_vec(vec: &Vec) -> Vec { + + let mut vec = Vec::new(); vec.push(22); vec.push(44); vec.push(66);