다음과 같은 일반적인 시나리오를 고려하십시오.
if(myObject == null) {
myObject = new myClass();
}
null-coalescing 연산자를 사용하여 다음 교체에 대해 어떻게 생각하는지 궁금합니다.
myObject = myObject ?? new myClass();
두 번째 양식을 사용해야하는지 잘 모르겠습니다. 좋은 속기 myObject = myObject
처럼 보이지만 처음 에는 구문이 약간 코드 냄새가 나는 것처럼 보입니다.
이것이 합리적인 일입니까, 아니면 내가 빠진 것이 더 나은 속기입니까? 아니면 "3 줄이야, 극복 해!"
편집 : 언급했듯이, 이것을 전형적인 시나리오라고 부르는 것은 과장된 것입니다. 일반적으로 아직 채워지거나 채워지지 않은 자식 참조 유형 속성이있는 데이터베이스에서 엔티티를 검색 할 때이 상황이 발생한다는 것을 알았습니다.
myClass myObject = myClassService.getById(id);
myObject.myChildObject = myObject.myChildObject ?? new myChildClass();
MyClass
제공해야합니다 . MSDN을 참조하십시오 . public static readonly
Empty
String.Empty
??=
운전자는?