C# 형식의 기본값(C# 참조)
다음 표에서는 C# 형식의 기본값을 보여줍니다.
유형 | 기본값 |
---|---|
모든 참조 형식 | null |
모든 기본 제공 정수 숫자 형식 | 0(0) |
모든 기본 제공 부동 소수점 숫자 형식 | 0(0) |
부울 | false |
문자 |
'\0' (U+0000) |
열거형 | 식 (E)0 생성되는 값입니다. 여기서 E 열거형 식별자입니다. |
구조체 | 모든 값 형식 필드를 기본값으로 설정하고 모든 참조 형식 필드를 null 으로 설정하여 생성된 값. |
모든 nullable 값 형식 |
HasValue 속성이 false 이며 Value 속성이 정의되지 않은 인스턴스입니다. 이 기본값은 nullable 값 형식의 null 값이라고도합니다. |
기본값 식
다음 예제와 같이 default
연산자 사용하여 형식의 기본값을 생성합니다.
int a = default(int);
default
리터럴 사용하여 해당 형식의 기본값으로 변수를 초기화할 수 있습니다.
int a = default;
값 형식의 매개 변수 없는 생성자
값 형식의 경우 다음 예제와 같이 암시적 매개 변수 없는 생성자도 형식의 기본값을 생성합니다.
var n = new System.Numerics.Complex();
Console.WriteLine(n); // output: (0, 0)
런타임에 System.Type 인스턴스가 값 형식을 나타내는 경우 Activator.CreateInstance(Type) 메서드를 사용하여 매개 변수가 없는 생성자를 호출하여 형식의 기본값을 가져올 수 있습니다.
메모
구조체 형식(값 형식)에는 형식의 기본값이 아닌 값을 생성할 수 있는 명시적 매개 변수 없는 생성자 있을 수 있습니다. 따라서 default
연산자 또는 default
리터럴을 사용하여 형식의 기본값을 생성하는 것이 좋습니다.
C# 언어 사양
자세한 내용은 C# 언어 사양다음 섹션을 참조하세요.
- 기본값
- 기본 생성자
- 매개 변수 없는 구조체 생성자
- C# 11 - 자동 기본 구조체
참조
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET