섀도잉 파트 1
Coddy Rust 여정의 Fundamentals 섹션에 포함된 레슨 — 75개 중 46번째.
다른 스코프에서 이전 변수와 동일한 이름으로 새 변수를 선언할 수 있습니다. 새 변수는 해당 스코프가 끝날 때까지 이전 변수를 가립니다(shadows):
fn main() {
let x = 5;
{
let x = 12;
// 외부 x를 가립니다
println!("{}", x);
// "12"를 출력합니다
}
println!("{}", x);
// "5"를 출력합니다
}챌린지
초급섀도잉(shadowing) 개념을 보여주는 Rust 프로그램을 작성하세요. 다음 단계를 수행하세요:
x라는 이름의 변수를 선언하고5라는 값으로 초기화하세요.x의 값을 다음 형식으로 콘솔에 출력하세요:x is: …- 새로운 스코프 내에서 기존
x에3을 더한 새로운 값으로x를 섀도잉하세요. - 섀도잉된
x를 다음 형식으로 출력하세요:x is: … - 마지막으로 스코프 밖에서
x를 다음 형식으로 출력하세요:x is: …
치트 시트
다른 스코프에서 이전 변수와 동일한 이름으로 새 변수를 선언할 수 있습니다. 새 변수는 해당 스코프가 끝날 때까지 이전 변수를 가립니다(shadows):
fn main() {
let x = 5;
{
let x = 12;
// 외부 x를 가립니다
println!("{}", x);
// "12"를 출력합니다
}
println!("{}", x);
// "5"를 출력합니다
}직접 해보기
fn main() {
// x를 선언하고 5로 초기화합니다
// x의 값을 출력합니다
{
// 기존 x에 3을 더하여 x를 섀도잉(shadowing)합니다
// 섀도잉된 x의 값을 출력합니다
}
// 바깥쪽 x의 값을 출력합니다
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.