¿Es posible usar el valor de retorno de una función en lugar de un valor específico como parámetro opcional en una función? Por ejemplo en lugar de:
public void ExampleMethod(int a, int b, int c=10)
{
}
Quiero algo como
private int ChangeC(int a, int b)
{
return a+b;
}
public void ExampleMethod(int a, int b, int c=ChangeC(a,b))
{
}
c#
optional-parameters
Johannes Pertl
fuente
fuente
Respuestas:
Una de las formas:
fuente
No, esto no es posible. Para que un parámetro sea opcional, el valor debe ser una constante de tiempo de compilación. Sin embargo, puede sobrecargar el método de esta manera:
fuente
No, no es posible. La guía de programación de C # sobre argumentos opcionales dice:
Vea otras respuestas para soluciones alternativas.
fuente