Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Use la out palabra clave en dos contextos:
- Como modificador de parámetros, que se usa para pasar un argumento a un método por referencia en lugar de por valor.
- En declaraciones de parámetros de tipo genérico para interfaces y delegados, que se usan para especificar que un parámetro de tipo es covariante.
La documentación de referencia del lenguaje C# cubre la versión más reciente publicada del lenguaje C#. También contiene documentación inicial sobre las características de las versiones preliminares públicas de la próxima versión del lenguaje.
La documentación identifica cualquier característica introducida por primera vez en las últimas tres versiones del idioma o en las versiones preliminares públicas actuales.
Sugerencia
Para buscar cuándo se introdujo por primera vez una característica en C#, consulte el artículo sobre el historial de versiones del lenguaje C#.
El out modificador de parámetros es especialmente útil cuando un método necesita devolver más de un valor, ya que puede usar más de un out parámetro. Por ejemplo
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);
}
Las siguientes limitaciones se aplican al uso de la out palabra clave :
- No se pueden usar
outparámetros en métodos asincrónicos. - No se pueden usar
outparámetros en métodos de iterador. - No se pueden pasar propiedades como
outparámetros.