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