Menu
Coddy logo textTech

섀도잉 파트 1

Coddy Rust 여정의 Fundamentals 섹션에 포함된 레슨 — 75개 중 46번째.

다른 스코프에서 이전 변수와 동일한 이름으로 새 변수를 선언할 수 있습니다. 새 변수는 해당 스코프가 끝날 때까지 이전 변수를 가립니다(shadows):

fn main() {
    let x = 5;
    {
        let x = 12;
        // 외부 x를 가립니다
        println!("{}", x);
        // "12"를 출력합니다
    }
    
    println!("{}", x);
    // "5"를 출력합니다
}
challenge icon

챌린지

초급

섀도잉(shadowing) 개념을 보여주는 Rust 프로그램을 작성하세요. 다음 단계를 수행하세요:

  1. x라는 이름의 변수를 선언하고 5라는 값으로 초기화하세요.
  2. x의 값을 다음 형식으로 콘솔에 출력하세요: x is: …
  3. 새로운 스코프 내에서 기존 x3을 더한 새로운 값으로 x를 섀도잉하세요.
  4. 섀도잉된 x를 다음 형식으로 출력하세요: x is: …
  5. 마지막으로 스코프 밖에서 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의 값을 출력합니다
    
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Fundamentals의 모든 레슨