연습 - 수명
이 연습에서는 벡터에 삽입된 값에 대한 참조를 반환하도록 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 플레이그라운드에서 이 연습에 대한 솔루션을 찾을 수 있습니다.