Saltar al contenido

Pasando los parámetros nombrados en las funciones C#

Primero, repasemos un par de ejemplos de parámetros posicionales y analicemos por qué la posición de los parámetros de la función importa.

Ejemplo 1

Consideremos el siguiente código, que calcula el volumen de un cubo cuando se proporciona la longitud del borde (lado).

Pasando los parámetros nombrados en las funciones C#
Pasando los parámetros nombrados en las funciones C#
1234567double CalculaVolumenCubo(doble borde) { return Math.Pow(edge,3);}double Volume = calculateVolumeCube(5);Console.WriteLine($"Volume: {Volume:N2}");// La respuesta es Volume: 125.00

C#

Ejemplo 2

Tomemos otro ejemplo de cálculo de un volumen, pero esta vez estamos calculando el volumen de un cilindro.

1234567double CalculaVolumenCilindro(doble radio, doble altura) { return Math.PI*Math.Pow(radius,2)*height;}double Volume = calculateVolumeCylinder(2,4);Console.WriteLine($"Volume: {Volume:N2}");// La respuesta es Volume: 50.27

C#

La función anterior toma el radio y la altura como parámetros y devuelve el volumen del cilindro. Cuando proporcionamos el radio como 2 y la altura como 4, obtenemos el volumen como 50,27 (redondeado a dos decimales). Estos se denominan parámetros posicionales , ya que el orden en que se proporcionan los argumentos es importante.

Para una mayor perspectiva, revise el código que aparece a continuación:

123456double CalculaVolumenCilindro(doble altura, doble radio) { return Math.PI*Math.Pow(radius,2)*height;}double Volume = calculateVolumeCylinder(2,4);Console.WriteLine($"Volume: {Volume:N2}");

C#

¿Cuál crees que sería la respuesta? ¿Será la misma que el volumen: 50.27?

1// La respuesta es Volumen: 100.53

Puede que no esperes esta respuesta, pero si observamos de cerca la definición de la función, podemos ver que el primer parámetro es la altura y no el radio.

Típicamente, los programadores pierden mucho tiempo depurando este tipo de código porque no proporciona una excepción de tiempo de ejecución o de tiempo de compilación. La función anterior contenía sólo dos parámetros, pero imagina un escenario en el que tenemos una función con cuatro, cinco o más parámetros. En este caso, debes asegurarte de que revisas la definición de la función cuidadosamente cada vez que pases argumentos.