본문 바로가기

C#

C# 로컬 변수 초기화와 스코프 관리

로컬 변수는 메서드 내부에서 선언되어 해당 블록 내에서만 유효한 변수를 말합니다. 올바른 초기화와 스코프 관리는 코드의 안정성과 가독성을 높이는 데 필수적입니다.

1. 로컬 변수 초기화

C#에서는 변수를 사용하기 전에 반드시 초기화해야 합니다. 그렇지 않으면 컴파일 오류가 발생합니다. 기본값이 자동으로 할당되지 않으므로 직접 값을 지정해주어야 합니다.

int number; // 초기화하지 않으면 에러 발생
// Console.WriteLine(number); // 사용 불가

number = 10; // 초기화 후 사용 가능
Console.WriteLine(number);

2. 스코프(scope) 관리

로컬 변수는 선언된 블록({ }) 내부에서만 접근 가능합니다. 블록을 벗어나면 해당 변수는 소멸되어 더 이상 사용할 수 없습니다.

void Method()
{
  int x = 5; // 변수 선언 및 초기화
  if (x > 0)
  {
    int y = 10; // y는 if 블록 내에서만 유효
    Console.WriteLine(y);
  }

  // Console.WriteLine(y); // 오류: y는 여기서 접근 불가
}

3. 중첩 스코프 주의사항

내부 블록에서 외부 블록과 동일한 이름의 변수를 선언하면 외부 변수가 가려집니다. 이를 주의해야 의도치 않은 오류를 방지할 수 있습니다.

int value = 100;
{
  int value = 200; // 오류 발생: 같은 스코프 내 중복 선언 불가
}

따라서 변수명을 체계적으로 관리하고, 필요한 범위에서만 변수 선언을 하여 가독성과 유지보수를 용이하게 합니다.