연습 - 수명

완료됨

이 연습에서는 벡터에 삽입된 값에 대한 참조를 반환하도록 copy_and_return 함수를 다시 구현합니다. main 함수는 그대로 둡니다. 코드가 실행되고 모든 어설션이 통과되면 작업이 완료되었음을 알 수 있습니다.

// TODO: modify only this function.
fn copy_and_return(vector: &mut Vec<String>, value: &str) {
    vector.push(String::from(value));
}

fn main() {
    let name1 = "Joe";
    let name2 = "Chris";
    let name3 = "Anne";

    let mut names = Vec::new();

    assert_eq!("Joe", copy_and_return(&mut names, &name1));
    assert_eq!("Chris", copy_and_return(&mut names, &name2));
    assert_eq!("Anne", copy_and_return(&mut names, &name3));

    assert_eq!(
        names,
        vec!["Joe".to_string(), "Chris".to_string(), "Anne".to_string()]
    )
}

위 코드는 Rust 플레이그라운드에서 확인할 수 있습니다.

또한 Rust 플레이그라운드에서 이 연습에 대한 솔루션을 찾을 수 있습니다.