Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie das out Schlüsselwort in zwei Kontexten:
- Als Parametermodifizierer, mit dem Sie ein Argument anstelle eines Werts an eine Methode übergeben.
- In generischen Typparameterdeklarationen für Schnittstellen und Delegaten, die Sie verwenden, um anzugeben, dass ein Typparameter kovariant ist.
Die C#-Sprachreferenz dokumentiert die zuletzt veröffentlichte Version der C#-Sprache. Außerdem enthält sie eine erste Dokumentation zu Funktionen in der öffentlichen Vorschau für die kommende Sprachversion.
In der Dokumentation werden alle Features identifiziert, die in den letzten drei Versionen der Sprache oder in der aktuellen öffentlichen Vorschau eingeführt wurden.
Tipp
Informationen dazu, wann ein Feature erstmals in C# eingeführt wurde, finden Sie im Artikel zum Versionsverlauf der C#-Sprache.
Der out Parametermodifizierer ist besonders nützlich, wenn eine Methode mehr als einen Wert zurückgeben muss, da Sie mehrere out Parameter verwenden können. Beispiel:
public void Main()
{
double radiusValue = 3.92781;
//Calculate the circumference and area of a circle, returning the results to Main().
CalculateCircumferenceAndArea(radiusValue, out double circumferenceResult, out var areaResult);
System.Console.WriteLine($"Circumference of a circle with a radius of {radiusValue} is {circumferenceResult}.");
System.Console.WriteLine($"Area of a circle with a radius of {radiusValue} is {areaResult}.");
Console.ReadLine();
}
//The calculation worker method.
public static void CalculateCircumferenceAndArea(double radius, out double circumference, out double area)
{
circumference = 2 * Math.PI * radius;
area = Math.PI * (radius * radius);
}
Die folgenden Einschränkungen gelten für die Verwendung des out Schlüsselworts:
- Parameter können nicht in asynchronen Methoden verwendet werden
out. - Parameter können in Iteratormethoden nicht verwendet werden
out. - Eigenschaften können nicht als Parameter übergeben werden
out.