반응형
C# 11.0에서는 required modifier가 추가되었습니다. required modifier는 클래스, 구조체, 인터페이스의 필드 또는 속성에 적용하여, 해당 필드 또는 속성이 반드시 초기화되어야 함을 나타냅니다.
required modifier 사용하기
required modifier를 사용하려면, 필드 또는 속성에 required 키워드를 추가하면 됩니다.
// required modifier 사용
struct Person
{
public string Name { get; set; } = "John Doe";
public int Age { get; set;; } = 30;
public required string Address;
}
이 코드에서는 Person 구조체의 Address 속성에 required modifier를 적용했습니다. 따라서 Person 인스턴스를 생성할 때 Address 속성을 반드시 초기화해야 합니다.
객체 생성 시 초기화하지 않으면
required modifier를 적용한 필드 또는 속성을 초기화하지 않으면 컴파일 오류가 발생합니다.
// required modifier 없이 초기화하지 않으면 컴파일 오류 발생
Person person = new Person();
required modifier를 사용하지 않으면
required modifier를 사용하지 않으면, 필드 또는 속성을 초기화하지 않아도 컴파일 오류가 발생하지 않습니다. 그러나, 해당 필드 또는 속성이 사용되기 전에 초기화되지 않으면 예외가 발생할 수 있습니다.
주의사항
required modifier를 사용할 때는 다음과 같은 점에 유의해야 합니다.
- required modifier를 적용한 필드 또는 속성은 반드시 초기화해야 합니다.
- required modifier를 적용한 필드 또는 속성을 초기화하지 않으면 컴파일 오류가 발생합니다.
- required modifier를 사용하지 않으면, 필드 또는 속성을 초기화하지 않아도 컴파일 오류가 발생하지 않습니다. 그러나, 해당 필드 또는 속성이 사용되기 전에 초기화되지 않으면 예외가 발생할 수 있습니다.
결론
C# 11.0의 required modifier는 필드 또는 속성이 반드시 초기화되어야 함을 나타내기 위한 기능입니다. 이를 통해, 개발자는 필드 또는 속성이 누락되거나 잘못 초기화되는 것을 방지할 수 있습니다.
'C#' 카테고리의 다른 글
C#에서 class와 struct의 차이점 (0) | 2023.12.06 |
---|---|
C# Linked List (0) | 2023.12.02 |
C# 6.0 정적 멤버 직접 사용 (2) | 2023.11.09 |
C# 6.0의 catch/finally 블럭에서 await 사용 (0) | 2023.11.08 |
Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server. (0) | 2023.10.27 |