> 백엔드 개발 > C++ > C# 6.0 NULL CONDOINAL OPERATOR (?.)는 NULL 처리를 어떻게 단순화합니까?

C# 6.0 NULL CONDOINAL OPERATOR (?.)는 NULL 처리를 어떻게 단순화합니까?

Patricia Arquette
풀어 주다: 2025-01-25 15:26:08
원래의
638명이 탐색했습니다.

C# 6.0? c# 6.0 도입?. 이 연산자는 일반적으로 빈 조건부 연산자라고하며 빈 객체의 속성 또는 호출 방법에 액세스하는 간단하고 안전한 방법을 제공합니다. How Does the C# 6.0 Null-Conditional Operator (?. ) Simplify Null Handling?
다음 코드 조각을 살펴 보겠습니다.

이 연산자의 작업 원칙을 세분화합시다 :

먼저 첫 번째 조작 번호 (a)를 평가하고 비어 있는지 확인합니다. A가 비어 있으면 전체 표현식은 NULL로 평가되며 더 이상 평가되지 않습니다. A가 비어 있지 않으면 A. 회원으로서 두 번째 작전 (Propertionofa)의 방문을 계속 평가하십시오. 이 예에서는 A의 속성에 액세스합니다.

표현의 결과는 널의 값 (A가 비어있는 경우) 또는 A.propertyofa의 값입니다.

본질적으로, 작동 기호는 비정상적인 기준 이상을 방지하는 척도 역할을한다. 응용 프로그램이 붕괴되지 않도록 빈 개체의 속성 또는 호출 방법에 액세스 할 수 있습니다.

이 대안 문법을 고려하십시오 :

이 방법이 동일한 결과에 도달했지만 별도의 공기 값과 조건부 할당이 포함됩니다. ?. 운영자는보다 간결하고 우아한 솔루션을 제공합니다.
<code class="language-csharp">public class A
{
    public string PropertyOfA { get; set; }
}

...

var a = new A();
var foo = "bar";
if (a?.PropertyOfA != foo)
{
    //somecode
}</code>
로그인 후 복사
또한 작동 기호는 표현식 유형을 변경할 수 있습니다. 예를 들어, FileInfo.length는 긴 속성입니다. 그러나 당신이 그것을 사용하는 경우 :

당신은 마침내 값이 비어있을 수 있음을 나타냅니다. 이는 명시 적 진공 검사에 대한 수요를 제거하고 코드를 단순화하며 가용성을 향상시킵니다.

    위 내용은 C# 6.0 NULL CONDOINAL OPERATOR (?.)는 NULL 처리를 어떻게 단순화합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    저자별 최신 기사
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿