기본값 식(Default value expressions)
기본값 식(Default value expressions)
기본값 식은 어떤 타입의 기본값을 만들어 내요. 기본값 식에는 두 가지 종류가 있는데요, 바로 default 연산자를 호출하는 방식과 default 리터럴을 쓰는 방식이에요.
덧붙여, default 키워드는 switch 문 안에서 기본 case 레이블로도 쓰인답니다.
[!INCLUDEcsharp-version-note]
default 연산자
default 연산자의 인자는 타입의 이름이나 타입 매개변수여야 해요. 다음 예시를 볼게요:
:::code language="csharp" source="snippets/shared/DefaultOperator.cs" id="WithOperand":::
default 리터럴
컴파일러가 식의 타입을 추론할 수 있는 상황이라면, default 리터럴로 타입의 기본값을 만들어 낼 수 있어요. default 리터럴 식은 추론된 타입을 T라고 할 때 default(T) 식과 똑같은 값을 만들어 내요. default 리터럴은 다음 경우에 쓸 수 있답니다:
- 변수의 할당이나 초기화에서.
- 선택적 메서드 매개변수의 기본값을 선언할 때.
- 메서드 호출에서 인자 값을 전달할 때.
return문에서, 또는 식 본문 멤버의 식으로.
다음 예시는 default 리터럴을 사용하는 모습을 보여줘요:
:::code language="csharp" source="snippets/shared/DefaultOperator.cs" id="DefaultLiteral":::
[!TIP] 코드베이스에서
default리터럴을 어떤 방식으로 쓸지 기준을 정하고 싶다면 .NET 스타일 규칙 IDE0034을 써보세요.
C# 언어 사양
더 자세한 내용은 C# 언어 사양의 기본값 식 섹션을 참고해요.