Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Usare la out parola chiave in due contesti:
- Come modificatore di parametro, usato per passare un argomento a un metodo per riferimento anziché per valore.
- Nelle dichiarazioni di parametri di tipo generico per interfacce e delegati, che si usa per specificare che un parametro di tipo è covariante.
Il riferimento al linguaggio C# documenta la versione rilasciata più di recente del linguaggio C#. Contiene anche la documentazione iniziale per le funzionalità nelle versioni di anteprima pubblica per la prossima versione del linguaggio di programmazione.
La documentazione identifica tutte le funzionalità introdotte nelle ultime tre versioni della lingua o nelle anteprime pubbliche correnti.
Suggerimento
Per trovare quando una funzionalità è stata introdotta per la prima volta in C#, vedere l'articolo sulla cronologia delle versioni del linguaggio C#.
Il out modificatore di parametri è particolarmente utile quando un metodo deve restituire più di un valore perché è possibile usare più di un out parametro. Ad esempio:
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);
}
Le limitazioni seguenti si applicano all'uso della out parola chiave :
- Non è possibile usare
outi parametri nei metodi asincroni. - Non è possibile usare
outparametri nei metodi iteratore. - Non è possibile passare le proprietà come
outparametri.