From 1c51ad049fbabb9b304e1ed8e37d53475645dfe0 Mon Sep 17 00:00:00 2001 From: Rock070 Date: Sun, 17 Dec 2023 16:00:15 +0800 Subject: [PATCH] Refactor fill_vec function to take a mutable reference to vec --- exercises/06_move_semantics/move_semantics2.rs | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/exercises/06_move_semantics/move_semantics2.rs b/exercises/06_move_semantics/move_semantics2.rs index baf6bcc9..5113e30c 100644 --- a/exercises/06_move_semantics/move_semantics2.rs +++ b/exercises/06_move_semantics/move_semantics2.rs @@ -5,22 +5,18 @@ // Execute `rustlings hint move_semantics2` or use the `hint` watch subcommand // for a hint. -// I AM NOT DONE - #[test] fn main() { - let vec0 = vec![22, 44, 66]; + let mut vec0 = vec![22, 44, 66]; - let mut vec1 = fill_vec(vec0); + let vec1 = fill_vec(&mut vec0.clone()); assert_eq!(vec0, vec![22, 44, 66]); assert_eq!(vec1, vec![22, 44, 66, 88]); } -fn fill_vec(vec: Vec) -> Vec { - let mut vec = vec; - +fn fill_vec(vec: &mut Vec) -> Vec { vec.push(88); - vec + vec.to_vec() }