C#-Out-Parameter
„out“ ist ein Schlüsselwort in C#, das verwendet wird, um Argumente als Referenztyp an eine Methode zu übergeben. Variablen, die als Out-Parameter an eine Methode übergeben werden, müssen nicht deklariert oder initialisiert werden, bevor sie an den Methodenaufruf übergeben werden. Die aufgerufene Methode muss den Variablen der Out-Parameter Werte zuweisen, bevor das Steuerelement die aufgerufene Methode verlässt und bevor die aufgerufene Methode einen Wert an die aufrufende Methode zurückgibt. Es ist möglich, mehrere Parameter an eine Methode zu übergeben und die Methode gibt mehrere Werte zurück.
Syntax mit Erklärung:
Beim Aufrufen der Methode mit dem Out-Parameter lautet die Syntax wie folgt:
Method_name(out data_type variable_name);
Hier ist Methodenname ein beliebiger benutzerdefinierter Name, der der Methode gegeben wird, „out“ ist das Schlüsselwort, mit dem ausgedrückt wird, dass die an die Methode übergebene Variable ein Out-Parameter ist, Datentyp kann ein beliebiger Datentyp der Variablen sein und Variablenname ist der benutzerdefinierte Name der Variablen.
Die Syntax für die aufzurufende Methode lautet wie folgt:
access_specifier return_type Method_name(out data_type variable_name);
Hier kann access_specifier ein beliebiger Zugriffsspezifizierer unter den fünf von C# unterstützten Zugriffsspezifizierern sein, z. B. öffentlich oder privat. Dann ist return_type der Datentyp, den diese Methode zurückgibt, gefolgt vom Methodennamen und der „out“-Parameterliste.
Wie funktioniert der Parameter „out“ in C#?
In C# funktioniert das Schlüsselwort „out“ ähnlich wie die Schlüsselwörter „ref“ und „in“. Der Unterschied zwischen den Parametern „out“ und „ref“ besteht darin, dass die Parametervariablen „out“ nicht initialisiert werden müssen, bevor sie an eine Methode übergeben werden. Der Benutzer kann die Parametervariable „out“ in der Argumentliste der Methode deklarieren Anstatt es separat zu deklarieren, wird dies als Inline-Deklaration des „out“-Parameters bezeichnet, während die „ref“-Parametervariablen initialisiert werden müssen, bevor sie an eine Methode übergeben werden. Auf die inline deklarierten „out“-Parameter kann im selben Codeblock zugegriffen werden.
Beispiel #1
Code:
using System; namespace ConsoleApp4 { public class Program { public static void Main(string[] args) { //inline declaration of 'out' parameter Display(out int num); Console.WriteLine("Value of variable 'num': {0}", num); Console.ReadLine(); } public static void Display(out int a) { //need to assign value a = 10; a += a; } } }
Ausgabe:
- Der Unterschied zwischen den Schlüsselwörtern „out“ und „in“ besteht darin, dass die Parameterwerte „out“ innerhalb der aufgerufenen Methode geändert werden können, während die Parameterwerte „in“ nicht innerhalb der aufgerufenen Methode geändert werden können.
- Eine Methode kann mehr als einen „out“-Parameter haben, wie zum Beispiel: Display(out x, out y);
- Um mit „out“-Parametern zu arbeiten, muss der Benutzer das Schlüsselwort „out“ explizit in der Methodendefinition und auch in der aufrufenden Methode verwenden. Gleichzeitig ist es nicht notwendig, dass die Namen der „out“-Parameter in der Methodendefinition und im Aufruf identisch sind.
- Die „out“-Parameter werden als Referenz an eine Methode übergeben, daher erstellen sie keinen neuen Speicherort im Speicher und verwenden denselben Speicherort, der von den variablen Argumenten beim Methodenaufruf belegt wird. Da die Methode, die „out“-Parameter verwendet, mehrere Werte zurückgeben kann, hilft es dem Benutzer, mehrere verarbeitete Werte von der aufgerufenen Methode zu erhalten. Bevor die Methode jedoch einen Wert an die aufrufende Methode zurückgibt, müssen den „out“-Parametern einige Werte in der Methode zugewiesen werden.
- Wir können nicht in allen Arten von Methoden mit „out“-Parametern arbeiten, so wie wir nicht in asynchronen Methoden, die wir mit dem Modifikator „async“ definieren, „out“-Parameter verwenden können, und wir können auch nicht in „Iterator“-Methoden „out“-Parameter verwenden bestehen aus der Aussage „Yield Return“ oder „Yield Break“. Da Eigenschaften keine Variablen sind, können wir sie nicht als „Out“-Parameter an eine Methode übergeben.
- Der Parameter „out“ kann mithilfe eines generischen Typs definiert werden, um anzugeben, dass der Typparameter kovariant ist. Darüber hinaus wird der Parameter „out“ in den TryParse()-Methoden für verschiedene Datentypen in C# verwendet. Die TryParse()-Methode gibt einen booleschen Wert zurück, der Erfolg oder Misserfolg angibt. Bei Erfolg wird das Ergebnis durch den Parameter „out“ angegeben.
Beispiel #2
Code:
using System; namespace ConsoleApp4 { public class Program { public static void Main(string[] args) { string str = "123456"; int num; //if ‘canParse’ is true; the result of conversion will be stored in ‘num’ bool canParse = Int32.TryParse(str, out num); if (canParse) Console.WriteLine(num); else Console.WriteLine("Could not be parsed."); Console.ReadLine(); } } }
Ausgabe:
Beispiele für C#-Out-Parameter
Im Folgenden finden Sie Beispiele für C#-Out-Parameter:
Beispiel #1
Beispiel zeigt, wie mehrere „Out“-Parameter an eine Methode übergeben werden und die Methode dann mehrere Werte zurückgibt.
Code:
using System; namespace ConsoleApp4 { public class Program { public static void Main() { //declaring variables without assigning values float area, perimeter; //passing multiple variables to a method using 'out' keyword Calculate(5, 10, out area, out perimeter); //displaying the result Console.WriteLine("The area of rectangle is: {0}", area); Console.WriteLine("The perimeter of rectangle is: {0}", perimeter); Console.ReadLine(); } //method taking length & breadth & it will return area and perimeter of rectangle public static void Calculate(int length, int breadth, out float area, out float perimeter) { area = length * breadth; perimeter = 2 * (length + breadth); } } }
Ausgabe:
Beispiel #2
Beispiel, das die Inline-Deklaration des „out“-Parameters zeigt.
Code:
using System; namespace ConsoleApp4 { public class Program { public static void Main() { //in-line declaration of variables without assigning values Calculate(out int length, out int breadth, out float area); //displaying the values of length, breadth, and area Console.WriteLine("Length of rectangle: " + length); Console.WriteLine("Breadth of rectangle: " + breadth); Console.WriteLine("Area of rectangle: " + area); Console.ReadLine(); } //method taking 'out' parameters and it returns multiple values public static void Calculate(out int l, out int b, out float a) { l = 30; b = 40; a = l * b; } } }
Ausgabe:
Fazit
Der Parameter „out“ in C# ermöglicht es Benutzern, Argumente durch Verweis auf eine Methode zu übergeben. Die als „out“-Parameter verwendete Variable muss nicht initialisiert werden, bevor sie an eine Methode übergeben wird. Die aufgerufene Methode sollte dem Out-Parameter einen Wert zuweisen, bevor sie einen Wert zurückgibt.
Das obige ist der detaillierte Inhalt vonC#-Out-Parameter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Leitfaden zu Active Directory mit C#. Hier besprechen wir die Einführung und die Funktionsweise von Active Directory in C# sowie die Syntax und das Beispiel.

Leitfaden zur C#-Serialisierung. Hier besprechen wir die Einführung, die Schritte des C#-Serialisierungsobjekts, die Funktionsweise bzw. das Beispiel.

Leitfaden zum Zufallszahlengenerator in C#. Hier besprechen wir die Funktionsweise des Zufallszahlengenerators, das Konzept von Pseudozufallszahlen und sicheren Zahlen.

Leitfaden zur C#-Datenrasteransicht. Hier diskutieren wir die Beispiele, wie eine Datenrasteransicht aus der SQL-Datenbank oder einer Excel-Datei geladen und exportiert werden kann.

Leitfaden zur Fakultät in C#. Hier diskutieren wir die Einführung in die Fakultät in C# zusammen mit verschiedenen Beispielen und Code-Implementierungen.

Leitfaden zu Mustern in C#. Hier besprechen wir die Einführung und die drei wichtigsten Arten von Mustern in C# zusammen mit ihren Beispielen und der Code-Implementierung.

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.

Leitfaden zu Primzahlen in C#. Hier besprechen wir die Einführung und Beispiele von Primzahlen in C# sowie die Codeimplementierung.
