Heim >Backend-Entwicklung >C++ >Was ist der C# Null -Koalescing -Operator (??) und wie funktioniert es?

Was ist der C# Null -Koalescing -Operator (??) und wie funktioniert es?

DDD
DDDOriginal
2025-01-29 08:15:10379Durchsuche

What is the C# Null Coalescing Operator (??) and How Does it Work?

Das Symbol für leere Fusionsoperation im C#: Das Geheimnis des doppelten Fragezeichens

Im Bereich der C# -Programmierung können Sie auf eine spezielle Syntax mit zwei Fragemarken stoßen ("??"). Dieses mysteriöse Symbol wird als Air Merger Computing bezeichnet, das es wert ist, sorgfältig zu studieren.

Luftverschmelzungsbetriebsymbol: Übersicht

Die Funktion des Luftverzorgungen (dargestellt durch "??" ähnelt dem drei Yuan -Operator (sofort wenn). Sie können einfach den Reservewert angeben, der für das Ergebnis der linken Expression verwendet wird.

Kontextbeispiele

Betrachten Sie das folgende Codefragment:

Hier wird das leere Merger -Computing -Zeichen verwendet, um den Wert der Formsanzvariablen in FormsAuth (falls es nicht leer ist) oder eine neue FormsAuthenticationWrapper -Instanz (wenn FormsAuth leer ist) festgelegt wird.

Die bedingte Aussage der Erweiterung ist äquivalent
<code class="language-csharp">FormsAuth = formsAuth ?? new FormsAuthenticationWrapper();</code>

Um das Verhalten des Luftverzerzungsbetreibers besser zu verstehen, können wir es in eine äquivalente bedingte Aussage erweitern:

vereinfachen Sie

weiter

Diese Bedingung kann weiter geschrieben werden:
<code class="language-csharp">FormsAuth = formsAuth != null ? formsAuth : new FormsAuthenticationWrapper();</code>

Daher ist das Air Merger Computing-Charakter im Wesentlichen eine Abkürzung zur Anweisung IF-ART S, die eine einfache Möglichkeit bietet, den Sicherungswert anzugeben.

Klassenluftaberblichkeitsbetriebsymbol

<code class="language-csharp">if (formsAuth != null)
    FormsAuth = formsAuth;
else
    FormsAuth = new FormsAuthenticationWrapper();</code>
Sie können mehrere Air Merger Computing verknüpfen, um den leeren Wert nacheinander zu überprüfen. Zum Beispiel:

Diese Anweisung weist die erste nicht -mepty Antwort# zu, um die Variable zu beantworten. Wenn alle Antwort# Werte leer sind, wird die Antwortvariable leer gehalten. Leistungsvorkehrungen

Es ist zu beachten, dass der Luftverfertigungsoperator seinen Ausdruck nur einmal bewertet, unabhängig davon, ob sie wahr oder falsch sind. Dies kann von Vorteil sein, wenn einer der Ausdrücke Nebenwirkungen hat.
<code class="language-csharp">string Answer = Answer1 ?? Answer2 ?? Answer3 ?? Answer4;</code>

Das obige ist der detaillierte Inhalt vonWas ist der C# Null -Koalescing -Operator (??) und wie funktioniert es?. 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