[C#] var 형식

Flaming Bun·2025년 5월 21일

C#

목록 보기
22/35

참고 서적: 이것이 C# 이다(저자: 박상현)

🔥 var 형식

C#은 변수나 상수에 대해 철저하게 형식 검사를 하면서 컴파일 단계에서 프로그래머의 실수를 줄여주는 강력한 형식의 언어다.

하지만 var 키워드를 통해 약한 형식검사를 지원하기도 한다.

var 키워드를 사용하면 컴파일러나 인터프리터가 해당 변수에 담는 데이터를 보고 자동으로 형식을 지정한다.

var 키워드 특징

  • var 키워드 사용 시 선언과 동시에 초기화 해야한다.

  • var은 지역 변수로만 사용 가능하다.

    • 왜? 클래스의 필드는 선언과 같이 초기화하지 않고 생성자를 통해 초기화하는 경우가 대부분이다. 이때 var 키워드로 필드를 선언하면 컴파일러는 무슨 형식인지 파악할 방법이 없다.
  • 배열도 var로 선언할 수 있다.

var arr = new int[] {1,2,3};

📌 C#에서는 전역 변수가 없고, C와 C++에만 있다.

  • 왜? 코드의 가독성이 안좋고 오류를 자주 발생 시켰기 때문에 C#에는 전역변수가 없다.

Object VS var

Object는 컴파일 후에 실행될 때 CLR이 값을 박싱해서 힙에 넣고 스택의 참조를 통해 사용하는데 var 형식은 컴파일 시점에 컴파일러가 적합한 데이터 형식을 파악해서 바꿔서 컴파일해서 CLR이 해당 코드를 실행할 때는 var로 선언된지도 모르는 상태에서 스택에 올린다.

0개의 댓글