fixed move semantics 2

This commit is contained in:
palutz 2023-10-11 12:47:15 +01:00
parent 0cdc1122e6
commit 237ac327b4

View File

@ -9,9 +9,9 @@
fn main() { fn main() {
let vec0 = vec![22, 44, 66]; let vec0 = vec![22, 44, 66];
println!("{} has length {}, with contents: `{:?}`", "vec0", vec0.len(), vec0); println!("{} has length {}, with contents: `{:?}`", "vec0", vec0.len(), &vec0);
let mut vec1 = fill_vec(vec0); let mut vec1 = fill_vec(&vec0);
vec1.push(88); vec1.push(88);
println!("{} has length {}, with contents `{:?}`", "vec1", vec1.len(), vec1); println!("{} has length {}, with contents `{:?}`", "vec1", vec1.len(), vec1);
@ -20,10 +20,10 @@ fn main() {
assert_eq!(vec1, vec![22, 44, 66, 88]); assert_eq!(vec1, vec![22, 44, 66, 88]);
} }
fn fill_vec(vec: Vec<i32>) -> Vec<i32> { fn fill_vec(vec: &Vec<i32>) -> Vec<i32> {
let mut vec = vec; let mut vec = vec.clone();
vec.push(88); // vec.push(88);
vec vec
} }