소유권 규칙
- 각 값은 하나의 소유자만 가짐
- 소유자가 스코프를 벗어나면 값이 해제
- 한 번에 여러 불변 참조 또는 하나의 가변 참조만 가능
빌림 (Borrowing)
fn print_length(s: &String) { // 불변 빌림
println!("Length: {}", s.len());
}
fn add_suffix(s: &mut String) { // 가변 빌림
s.push_str(" World");
}
fn main() {
let mut greeting = String::from("Hello");
print_length(&greeting); // 불변 빌림
add_suffix(&mut greeting); // 가변 빌림
println!("{}", greeting); // "Hello World"
}
댓글 0