Heim >Backend-Entwicklung >C++ >Wie verhindert der Null-Conditional-Operator von C# 6.0 (?) NullReferencexceptions?

Wie verhindert der Null-Conditional-Operator von C# 6.0 (?) NullReferencexceptions?

Barbara Streisand
Barbara StreisandOriginal
2025-01-25 15:22:09362Durchsuche

C# 6.0 Null-Conditional Operator (?.)

C# 6.0?

C# 6.0 eingeführt? Dieser Bediener löst gemeinsame Probleme, die beim Ausführen eines Objektattributs oder des Aufrufens der Methode Abnormalitäten verursachen können. <.>?

?

Wertprüfung:

Sie bewertet, ob die erste Operation (z. B. a) leer ist. Wenn a leer ist, beendet der Bediener die Bewertung und gibt NULL zurück. Mitgliedsinterview:

Wenn a nicht leer ist, wird der Betreiber weiterhin die erste Betriebsnummer bewerten und zugreifen (wie A.Propertyofa).

    Verwendung
  • ?
  • In dem obigen Beispiel würde der Ausdruck a? Eigenkapital

In konzeptioneller Sicht kann das Computersymbol dem folgenden Code äquivalent sein:

Aber,?

Beispielanwendung
<code class="language-csharp">if (a?.PropertyOfA != foo) {
   //somecode
}</code>

Betrachten Sie eine Szene, Sie haben ein FileInfo -Objekt FI, das möglicherweise leer oder nicht leer ist. Durch die Verwendung des Bedieners können Sie potenzielle Anomalien vermeiden:

In diesem Fall wird die Länge in diesem Fall, wenn FI leer ist, auf Null gesetzt, ohne Anomalien zu verursachen.

Schlussfolgerung

<code class="language-csharp">if (a != null) {
    a.PropertyOfA;
}
else {
    null;
}</code>

c# 6.0? Durch die Bereitstellung von Luftwertinspektionen und Mitgliedsinterviews gleichzeitig in einem Ausdruck vereinfacht dies die Codestruktur und verbessert die Programmsicherheit.

Das obige ist der detaillierte Inhalt vonWie verhindert der Null-Conditional-Operator von C# 6.0 (?) NullReferencexceptions?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn