Categories: Allgemein

 Unterschied zwischen Ref- und Out-Schlüsselwort in C#

Contents

Referenz in C#

Das Schlüsselwort ref in C# wird zum Übergeben oder Zurückgeben von Referenzen von Werten an oder von Methoden verwendet. Grundsätzlich bedeutet dies, dass jede Änderung an einem Wert, der als Referenz übergeben wird, diese Änderung widerspiegelt, da Sie den Wert an der Adresse und nicht nur den Wert ändern. Es kann in folgenden Fällen implementiert werden:

  • Übergeben eines Arguments an eine Methode durch seine Referenz.
  • Zum Definieren einer Methodensignatur zum Zurückgeben einer Referenz der Variablen.
  • So deklarieren Sie eine Struktur als Ref-Struktur
  • Als lokale Referenz

Was Sie über ref Keyword wissen müssen

  • Wenn eine Variable, der das Schlüsselwort ref vorangestellt ist, an eine Methode übergeben wird, spiegeln sich die innerhalb der Methode vorgenommenen Änderungen in ihrem ursprünglichen Wert wider. 
  • Das Schlüsselwort Ref wird verwendet, wenn eine aufgerufene Methode den übergebenen Parameter aktualisieren muss.
  • Das Übergeben des Werts durch den ref-Parameter ist nützlich, wenn die aufgerufene Methode auch den Wert des übergebenen Parameters ändern muss.
  • Wenn das Schlüsselwort ref verwendet wird, können die Daten bidirektional übertragen werden.
  • Es ist nicht erforderlich, den Wert eines Parameters zu initialisieren, bevor zur aufrufenden Methode zurückgekehrt wird.
  • Der ref-Parameter sollte initialisiert werden, bevor er an eine Methode übergeben wird. 
  • Beim Aufrufen, Deklarieren oder Definieren einer Methode wird der ref-Parameter explizit als ref deklariert.

Schlüsselwort out in C#

out ist ein Schlüsselwort in C#, das   für die Übergabe der Argumente an Methoden als Referenztyp verwendet wird. Es wird im Allgemeinen verwendet, wenn eine Methode mehrere Werte zurückgibt. Es macht den formalen Parameter zu einem Alias ​​für das Argument, das eine Variable sein muss. Mit anderen Worten, jede Operation am Parameter wird am Argument durchgeführt. Es ist wie das Schlüsselwort ref, außer dass ref erfordert, dass die Variable initialisiert wird, bevor sie übergeben wird.

Es ist auch wie das Schlüsselwort in, außer dass es der aufgerufenen Methode nicht erlaubt, den Argumentwert zu ändern. Um einen out-Parameter zu verwenden, müssen sowohl die Methodendefinition als auch die aufrufende Methode explizit das out-Schlüsselwort verwenden.

Was Sie über das Out-Keyword wissen müssen

  • Wenn einer an eine Methode übergebenen Variablen das Schlüsselwort out vorangestellt ist, gibt die Methode es ohne Verwendung des Schlüsselworts return zurück.
  • Das Out-Schlüsselwort wird verwendet, wenn eine aufgerufene Methode mehrere übergebene Parameter aktualisieren muss.
  • Das Deklarieren von Parameter durch Out-Parameter ist nützlich, wenn eine Methode mehrere Werte zurückgibt.
  • Wenn das Schlüsselwort out verwendet wird, werden die Daten nur unidirektional weitergegeben.
  • Es ist notwendig, den Wert eines Parameters zu initialisieren, bevor zur aufrufenden Methode zurückgekehrt wird.
  • Der out-Parameter muss innerhalb der Methode initialisiert werden, an die er übergeben wird.
  • Beim Aufrufen, Deklarieren oder Definieren einer Methode wird der out-Parameter explizit als out deklariert.

Lesen Sie auch: Unterschied zwischen Anaconda- und Python-Programmierung

Ref vs. Out-Schlüsselwort in tabellarischer Form

Grundlage des VergleichsRef-SchlüsselwortOut-Schlüsselwort
BeschreibungWenn eine Variable, der das Schlüsselwort ref vorangestellt ist, an eine Methode übergeben wird, spiegeln sich die innerhalb der Methode vorgenommenen Änderungen in ihrem ursprünglichen Wert wider. Wenn einer an eine Methode übergebenen Variablen das Schlüsselwort out vorangestellt ist, gibt die Methode es ohne Verwendung des Schlüsselworts return zurück.
VerwendenDas Schlüsselwort Ref wird verwendet, wenn eine aufgerufene Methode den übergebenen Parameter aktualisieren muss.Das Out-Schlüsselwort wird verwendet, wenn eine aufgerufene Methode mehrere übergebene Parameter aktualisieren muss.
ParameterDas Übergeben des Werts durch den ref-Parameter ist nützlich, wenn die aufgerufene Methode auch den Wert des übergebenen Parameters ändern muss.Das Deklarieren von Parameter durch Out-Parameter ist nützlich, wenn eine Methode mehrere Werte zurückgibt.
DatenWenn das Schlüsselwort ref verwendet wird, können die Daten bidirektional übertragen werden.Wenn das Schlüsselwort out verwendet wird, werden die Daten nur unidirektional weitergegeben.
Wert des ParametersEs ist nicht erforderlich, den Wert eines Parameters zu initialisieren, bevor zur aufrufenden Methode zurückgekehrt wird.Es ist notwendig, den Wert eines Parameters zu initialisieren, bevor zur aufrufenden Methode zurückgekehrt wird.
Äußerer ParameterDer ref-Parameter sollte initialisiert werden, bevor er an eine Methode übergeben wird. Der out-Parameter muss innerhalb der Methode initialisiert werden, an die er übergeben wird.
BerufungBeim Aufrufen, Deklarieren oder Definieren einer Methode wird der ref-Parameter explizit als ref deklariert.Beim Aufrufen, Deklarieren oder Definieren einer Methode wird der out-Parameter explizit als out deklariert.

Lesen Sie auch: Unterschied zwischen Int und Long

osky

Recent Posts

Freeway vs. Highway: Ein detaillierter Blick auf die Feinen Unterschiede im Straßenverkehr

Einleitung: Die Begriffe "Freeway" und "Highway" werden oft synonym verwendet, aber es gibt subtile Unterschiede…

6 Monaten ago

Burrito vs. Enchilada: Die Feinen Unterschiede Zwischen Zwei Klassikern der Mexikanischen Küche

Burritos und Enchiladas sind zwei beliebte Gerichte der mexikanischen Küche, die oft miteinander verwechselt werden.…

6 Monaten ago

Ein umfassender Vergleich zwischen Replikation und Transkription

In der Zellbiologie spielen Replikation und Transkription entscheidende Rollen im genetischen Prozess. Beide sind Mechanismen,…

6 Monaten ago

Verständnis des Unterschieds zwischen Osmose und Diffusion

Osmose und Diffusion sind zwei grundlegende Prozesse, die in der Zellbiologie und Chemie eine entscheidende…

6 Monaten ago

Der entscheidende Unterschied zwischen 4G und 5G

Einleitung: Die Evolution der mobilen Kommunikationstechnologie hat einen bedeutenden Meilenstein erreicht, als 4G (LTE) zu…

6 Monaten ago

Der entscheidende Unterschied zwischen JPG und PNG

Einleitung: JPG und PNG sind zwei gängige Bildformate, die im Internet weit verbreitet sind. Obwohl…

6 Monaten ago