Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 var와 dynamic의 차이점

<시간/>

우리가 알고 있듯이 어떤 언어로든 프로그래밍은 변수 선언으로 시작하고 그 후에 정의와 논리 구현이 발생합니다. 따라서 코딩을 시작하기 전에 모든 프로그래밍 언어에서 변수를 선언하는 방법을 아는 것이 가장 중요한 요소 중 하나입니다.

이제 C# 언어의 인스턴스를 사용하면 언어의 발전과 함께 변수의 선언이 변경됩니다. 이전 버전의 C#에서와 같이 작성된 모든 코드는 컴파일 시간 자체의 유효성을 검사하여 var 키워드를 사용하여 변수를 선언하는 정적 유형 언어로 만들었습니다. C#4.0 이후에는 런타임에만 구문 유효성 검사 또는 오류 검사가 발생하는 동적 기능이 도입되었으며 변수 선언을 위한 동적 키워드도 도입되었습니다.

다음은 var와 dynamic의 중요한 차이점입니다.

Sr. 아니요. var 동적
1 정의 var는 정적으로 유형이 지정된 변수로 알려져 있으며, 이는 이러한 변수의 데이터 유형이 이러한 변수가 초기화되는 값 유형에 따라 수행되는 컴파일 시간에 유추된다는 것을 의미합니다. 반면에 dynamic은 동적으로 유형이 지정된 변수로, 해당 유형이 컴파일 시간이 아니라 런타임에 유추된다는 것을 분명히 의미합니다.
2 버전 C 샤프 언어의 var가 C#3.0에 도입되었습니다. 반면 동적 기능은 C#4.0 후반부에 도입되었습니다.
3 유형 var의 경우 컴파일 시 컴파일러에서 변수의 유형을 식별합니다. 반면 동적인 경우에는 컴파일러 자체에서 런타임에 변수의 유형을 식별합니다.
4 선언 var의 경우 변수는 선언 시점에 초기화되므로 컴파일러는 할당된 값에 따라 변수의 유형을 알 수 있습니다. 반면 동적의 경우 선언 시 초기화가 필수는 아닙니다.
5 예외 var로 정의한 변수는 선언 시 초기화되지 않으면 예외가 발생합니다. 변수가 동적으로 정의되는 동안 선언 시 초기화되지 않으면 예외가 발생하지 않습니다.