From 209f420ffe1f6b0eb3c5083f2ebccf50a3b9d315 Mon Sep 17 00:00:00 2001 From: Hariettemaina Date: Thu, 25 May 2023 11:43:44 +0300 Subject: [PATCH] making a clone of vec0 then pushing values into it --- exercises/move_semantics/move_semantics2.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/exercises/move_semantics/move_semantics2.rs b/exercises/move_semantics/move_semantics2.rs index 339b5f71..eab4c33d 100644 --- a/exercises/move_semantics/move_semantics2.rs +++ b/exercises/move_semantics/move_semantics2.rs @@ -5,28 +5,23 @@ // vec0 has length 3 content `[22, 44, 66]` // vec1 has length 4 content `[22, 44, 66, 88]` -// I AM NOT DONE fn main() { let vec0 = Vec::new(); - - // Do not move the following line! - let mut vec1 = fill_vec(vec0); + let mut vec1 = fill_vec(vec0.clone()); // Do not change the following line! println!("{} has length {} content `{:?}`", "vec0", vec0.len(), vec0); - let mut vec1 = fill_vec(vec0); - vec1.push(88); + vec1.push(88); println!("{} has length {} content `{:?}`", "vec1", vec1.len(), vec1); } -fn fill_vec(vec: Vec) -> Vec { - let mut vec = vec; - +fn fill_vec(mut vec: Vec) -> Vec { vec.push(22); vec.push(44); vec.push(66); vec } +