Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Use a out palavra-chave em dois contextos:
- Como modificador de parâmetro, que usas para passar um argumento a um método por referência em vez de por valor.
- Em declarações genéricas de parâmetros de tipo para interfaces e delegados, que se usam para especificar que um parâmetro de tipo é covariante.
A referência da linguagem C# documenta a versão mais recentemente lançada da linguagem C#. Contém também documentação inicial para funcionalidades em versões preliminares públicas para a próxima versão da linguagem.
A documentação identifica qualquer funcionalidade introduzida pela primeira vez nas últimas três versões da língua ou em pré-visualizações públicas atuais.
Sugestão
Para saber quando uma funcionalidade foi introduzida pela primeira vez em C#, consulte o artigo sobre o histórico de versões da linguagem C#.
O modificador out de parâmetro é especialmente útil quando um método precisa de devolver mais do que um valor, pois pode usar mais do que um out parâmetro. Por exemplo
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);
}
As seguintes limitações aplicam-se ao uso da out palavra-chave:
- Não podes usar
outparâmetros em métodos assíncronos. - Não podes usar
outparâmetros em métodos iteradores. - Não podes passar propriedades como
outparâmetros.