Unterschied zwischen Out und Ref in C#

Unterschied zwischen Out und Ref in C#

Schlüsselunterschied - aus vs Ref in C#
 

C# ist eine moderne Programmiersprache, die von Microsoft entwickelt wurde. Es wird zur Entwicklung verschiedener Anwendungen für Desktop, Web und Mobile verwendet. Funktionen oder Methoden sind ein Konzept in der Programmierung. Diese Gruppe von Aussagen, die zur Ausführung einer bestimmten Aufgabe verwendet werden, wird als Funktion oder Methode bezeichnet.  In C# -Programmen beginnt die Ausführung von Main (). Es ist ein Beispiel für eine Methode. Beim Aufrufen einer Methode werden Daten an die Methode übergeben oder von der Methode empfangen. Die Methode, die die neue Methode aufruft Aufrufen der Methode. Die neue Methode ist als die bekannt Methode genannt. Für die Verwaltung der Übergabewerte und das Zurückholen des Ergebnisses verwendet C# Parameter. Sie sind geschätzte Parameter, Ausgabeparameter und Referenzparameter. Die Wertparameter werden zum Übergeben von Parametern in die Methode nach Wert verwendet. Die Referenzparameter werden verwendet, um Parameter durch Referenz an die Methode zu übergeben. Die Ausgangsparameter werden verwendet, um das Ergebnis aus der Methode zurückzugeben. In C#wird aus dem Schlüsselwort für Ausgabeparameter verwendet, und das Ref -Schlüsselwort wird verwendet, um Parameter zu referenzieren. Der Schlüsselunterschied Zwischen Out und Ref in C# ist das, OUT ist ein Schlüsselwort, mit dem ein Ausgabeparameter verwendet wird, mit dem die Ergebnisse von der aufgerufenen Methode zu Aufrufmethode geleitet werden, während Ref ein Schlüsselwort ist, um einen Referenzparameter zu verweisen, mit dem Daten von der Aufrufmethode an die aufgerufene Methode geleitet und die Daten empfangen werden können von der aufgerufenen Methode zur Aufrufmethode.

INHALT

1. Überblick und wichtiger Unterschied
2. Was ist in C# draußen
3. Was ist Ref in C#
4. Ähnlichkeiten zwischen Out und Ref in C#
5. Seite an Seite Vergleich - out vs Ref in C# in tabellarischer Form
6. Zusammenfassung

Was ist in C# draußen?

Die Syntax für die Funktion oder eine Methode lautet wie folgt. Eine Methode enthält eine Reihe von Elementen wie Methodenname, Parameterliste, Rückgabetyp und Zugriffsspezifizierer.

(Parameterliste)

// Anweisungen zur Ausführung

Jede Methode verfügt über eine eindeutige Methode, um den Funktionsaufruf aufzurufen. Die ausführbaren Anweisungen befinden sich in lockigen Zahnspangen. Der Rückgabetyp erklärt, ob die Funktion einen Wert zurückgibt oder nicht. Wenn es keinen Rückgabetyp gibt, heißt es Leere. Zugriffsspezifizierer wird verwendet, um die Methode Barrierefreiheit in der Anwendung anzugeben. Die Parameter werden zum Empfangen oder Übergeben von Daten an die Methode verwendet. Es kann auch Methoden ohne Parameter geben. Parameter können geschätzte Parameter, Ausgabeparameter oder Referenzparameter werden.

Die Ausgangsparameter werden verwendet, um die Ergebnisse an die Aufrufmethode zu übergeben. Dafür sollte der Parameter mit dem Keyword deklariert werden. Der Ausgangsparameter erstellt keinen neuen Speicherort. Im Allgemeinen gibt eine Methode einen Wert zurück. In C#ist es jedoch möglich, zwei Werte aus einer Funktion mithilfe von Ausgabeparametern zurückzugeben. Verweisen Sie das folgende Programm.

Namespace Application1

            öffentliche Klassenberechnung

public void Display (out int a, out int b)

int value = 5;

a = Wert;

B = Wert;

a = a* a;

B = B*B;

public static void main (String [] args)

int value1 = 10, value2 = 20;

Berechnung cal = neue Berechnung ();

Cal.Anzeige (out value1, out value2);

Konsole.Zeile lesen();

Die Anzeigefunktion wird aus der Hauptmethode aufgerufen. Der Wert 1 und der Wert zwei haben 10 und 20, aber sie werden nicht in die Methode aufgenommen. Der Wert von A beträgt 25 und der Wert von B beträgt auch 25 in der Funktion. Daher werden diese Werte zurückgegeben. Beim Drucken von Wert1 und Wert2 wird es nicht 10 und 20 entstehen. Stattdessen druckt es 25 und 25. Verwenden des Out -Keywords mehrere Werte können aus der Methode zurückgegeben werden.

Was ist Ref in C#?

Bei der Übergabe von Parametern nach Wert wird für jeden Parameter ein neuer Speicherort erstellt. Die tatsächlichen Parameter, die aus dem Hauptprogramm gesendet wurden. Stattdessen werden diese Werte an einen separaten Ort kopiert. Diese neuen variablen Kopien werden als formale Parameter bezeichnet. Verweisen Sie den folgenden Code.

Namespace Application1

öffentliche Klassenberechnung

public void Swap (int x, int y)

int temp;

temp = x;

x = y;

y = temp;

public static void main (String [] args)

Berechnung cal = neue Berechnung ();

int p = 2;

int q = 3;

Cal.Swap (p, q);

Konsole.WriteLine (P);

Konsole.WriteLine (q);

Konsole.Zeile lesen();

Gemäß dem obigen Programm hat die Berechnungsklasse einen Methode -Swap (). Im Hauptprogramm wird ein Objekt der Typberechnung erstellt. Es gibt zwei Werte wie P und Q. Die Variable P hat Wert 2 und Q -Variable hat Wert 3.  Diese beiden Werte werden an die Swap -Methode übergeben. In der SWAP -Methode wird der Wert 2 in die Variable x kopiert und der Wert 3 in Variable Y kopiert. Unter Verwendung der Temp -Variablen werden die Werte ausgetauscht. Zurück im Hauptprogramm werden die Werte beim Drucken von P und Q nicht ausgetauscht. Der P -Wert beträgt immer noch 2 und Q -Wert 3. Auch bei der Swap -Methode werden die Werte ausgetauscht, spiegelt sich jedoch im Hauptprogramm nicht wider.

Im Gegensatz zu den oben genannten Werten ist es möglich, Parameter durch Referenz zu übergeben. Eine Referenzvariable ist ein Verweis auf den Speicherort. Es wird kein neuer Speicherort erstellt. Die Änderungen in der Methode, die sich im Hauptprogramm widerspiegeln.  In C#werden die Referenzparameter mithilfe von Ref -Schlüsselwort verwiesen. Verweisen Sie das folgende Programm.

Namespace Application1

öffentliche Klassenberechnung

public void Swap (Ref int x, ref int y)

int temp;

temp = x;

x = y;

y = temp;

public static void main (String [] args)

Berechnung cal = neue Berechnung ();

int p = 2;

int q = 3;

Cal.Swap (Ref P, Ref Q);

Konsole.WriteLine (P);

Konsole.WriteLine (q);

Konsole.Zeile lesen();

Nach dem obigen Programm hat die Klassenberechnung die Swap -Methode. Im Hauptprogramm wird ein Objekt der Typberechnung erstellt. Die sind zwei Variablen wie P und Q. Die P -Variable hat den Wert 2 und die Q -Variable hat den Wert 3. Anstatt Werte zu übergeben, wird der Verweis auf die Speicherorte von P und Q an die Methode übergeben. Diese Referenzvariablen werden mit Ref verwiesen. In der SWAP -Methode werden die Änderungen an den tatsächlichen Parametern, anstatt die Werte an einen neuen Ort zu bewältigen. Wenn Sie die P- und Q -Werte des Hauptprogramms drucken. Jetzt beträgt der P -Wert 3 und Q -Wert 2.

Was ist die Ähnlichkeit zwischen Out und Ref in C#?

  • Beide sind Schlüsselwörter, mit denen die Parameter einer Methode überwiesen werden.

Was ist der Unterschied zwischen Out und Ref in C#?

out vs Ref in C#

Das OUT ist ein Schlüsselwort in C#, mit dem ein Ausgabeparameter verweist. Es wird verwendet, um die Ergebnisse von einer aufgerufenen Methode zum Aufrufen der Methode zu übergeben. Der Ref ist ein Schlüsselwort in C#, das verwendet wird, um einen Referenzparameter zu verweisen. Es wird verwendet, um Daten von der Aufrufmethode an die aufgerufene Methode zu übergeben und Daten von der aufgerufenen Methode an die Aufrufmethode zurückzugeben.
Funktionalität
Bei Verwendung des Schlüsselworts können die Daten von der Aufrufmethode an die aufgerufene Methode übergeben werden. Diese Daten werden jedoch verworfen. Es wird verwendet, um das Ergebnis an die aufrufende Methode von der genannten Methode zu übergeben. Bei Verwendung des Schlüsselwort -REF werden die Daten von der Aufrufmethode an die aufgerufene Methode übergeben und die manipulierten Daten werden an die aufrufende Methode übergeben.
Datenübergang
Bei Verwendung des Schlüsselworts werden die Daten auf eine Weise übergeben, die eine genannte Methode zur Aufrufmethode ist. Bei Verwendung des Schlüsselwort -REF werden die Daten auf zwei Arten übergeben, von der Aufrufmethode bis zur aufgerufenen Methode und von der genannten Methode zur Aufrufmethode.

Zusammenfassung -Aus vs Ref in C# 

Beim Aufrufen einer Methode kann es erforderlich sein, die Werte in die Methode zu übergeben und die Ergebnisse aus der Methode zurückzugewinnen.  C# hat unterschiedliche Parameter, um dies zu erreichen. Die Wertparameter werden zum Übergeben von Parametern in die Methode nach Wert verwendet. Die Referenzparameter werden verwendet, um Parameter durch Referenz an die Methode zu übergeben. Die Ausgangsparameter werden verwendet, um das Ergebnis aus der Methode zurückzugeben. In C#wird aus dem Schlüsselwort für Ausgabeparameter verwendet, und das Ref -Schlüsselwort wird verwendet, um Parameter zu referenzieren. Der Unterschied zwischen Out und Ref in C# besteht darin, dass OUT ein Schlüsselwort ist, mit dem ein Ausgabeparameter verwendet wird, der zum Übergeben von Ergebnissen von der aufrufenden Methode verwendet wird Aufrufen der Methode auf die aufgerufene Methode und zum Empfangen der Daten von der aufgerufenen Methode zur Aufrufmethode.

Laden Sie den PDF von Out vs Ref in C# herunter

Sie können die PDF -Version dieses Artikels herunterladen und sie für Offline -Zwecke gemäß Citation Note verwenden. Bitte laden Sie die PDF -Version hier herunter: Unterschied zwischen Out und Ref in C#

Referenz:

1.Tutorialspitze.com. „C# Methoden." Der Punkt. Hier verfügbar 
2.dnfvideo. C# OUT -Parameter vs Ref -Parameter, .Vorbereitungsvideos von Netto -Interviews, 28. September. 2015. Hier verfügbar  

Bild mit freundlicher Genehmigung:

1.'C Sharp'by mothmolevna - eigene Arbeit, (öffentlich zugänglich) über Commons Wikimedia