Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 선언(Declaration)과 정의(Definition)의 차이점 완벽 정리

C#에서 선언(Declaration)이란 변수를 선언하여 메모리 공간만 할당한 상태를 의미하며, 아직 어떤 값도 설정되지 않습니다.

반면 정의(Definition)는 변수에 실제 값을 할당하여 초기화까지 완료한 상태를 말합니다. 즉, 정의가 이루어진 변수부터 프로그램에서 안전하게 사용할 수 있습니다.

이러한 선언과 정의의 구분은 단순 변수뿐만 아니라 배열(Array), 컬렉션(Collection) 등 모든 데이터 구조에 동일하게 적용됩니다. 참고로 C#에서는 지역 변수를 사용하기 전에 반드시 값이 할당되어야 하므로, 선언만 하고 사용하려 하면 컴파일 오류가 발생할 수 있습니다.

변수(Variables)

먼저 변수를 선언하는 방법입니다. 메모리에는 공간이 확보되지만 값은 아직 없습니다.

int x;

이제 변수에 값을 할당하여 정의(초기화)해 보겠습니다.

x = 10;

배열(Arrays)

배열도 마찬가지로 선언과 초기화 과정을 거칩니다. 먼저 배열을 선언한 뒤, new 키워드로 크기를 지정하여 초기화합니다.

int[] n;          // 선언
n = new int[10];  // 초기화

초기화된 배열에는 다음과 같이 각 요소에 값을 할당할 수 있습니다.

n[0] = 100;
n[1] = 200;

정리하면, 선언은 '메모리 준비' 단계이고 정의는 '값 부여' 단계입니다. 두 개념의 차이를 명확히 이해하면 C#에서 변수와 배열을 더욱 안정적으로 다룰 수 있습니다.