out (C#-referens)
Du kan använda nyckelordet out
i två kontexter:
Som parametermodifierare kan du skicka ett argument till en metod med referens i stället för efter värde.
I allmänna typparameterdeklarationer för gränssnitt och ombud, som anger att en typparameter är covariant.
Nyckelordet out
är särskilt användbart när en metod behöver returnera mer än ett värde eftersom mer än en out
parameter kan användas, t.ex.
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);
}
Följande begränsningar gäller för att använda nyckelordet out
:
out
parametrar tillåts inte i asynkrona metoder.out
parametrar tillåts inte i iteratormetoder.- Det går inte att skicka egenskaper som
out
parametrar.
Samarbeta med oss på GitHub
Källan för det här innehållet finns på GitHub, där du även kan skapa och granska ärenden och pull-begäranden. Se vår deltagarguide för mer information.