Ya ayer comenté algo sobre las novedades de C# 4.0 presentadas en el PDC 2008. Hoy voy a hablar de las novedades que más me ha llamado la atención, que son, los parámetros opcionales y los parámetros nombrados
Parametros opcionales
[sourcecode language='csharp']int Suma(int x = 0, int y = 0, int z = 0)
{
return x + y + z;
}
// Las siguientes llamadas serán válidas:
int a = Suma(); // a = 0
int b = Suma(2); // b = 2
int c = Suma(2, 3); // c = 5
int d = Suma(2, 3, 4); // d = 9[/sourcecode]
Como vemos se pueden pasar opcionalmente los parámetros. Esto ya se puede hacer en Visual Basic .NET desde hace algún tiempo por lo que no es ninguna novedad para algunas personas. ¿Pero que ocurre si queremos pasar el parámetro “x” y “z” y queremos que el parámetro “y” sea opcional? Tenemos la opción de reordenar la firma del método, lo cual no siempre es posible o usar los parámetros nombrados.
Parámetros nombrados
[sourcecode language='csharp']int e = Suma(x:5, z:7); // e = 12[/sourcecode]
En este ejemplos, pasamos los parametros x=5 y z=7, pero forzando su asignación.
Hay que tener en cuenta que todo esto son suposiciones y que habrá que esperar a la primera beta del nuevo lenguaje para hacer pruebas más fiables y ver el verdadero comportamiento de todo esto.
NOTA: Todos los ejemplos están sacados del blog de Octavio Hernández

October 30th, 2008 10:37 AM
Profundizando más en las novedades de C# 4.0…
Ya ayer comenté algo sobre las novedades de C# 4.0 presentadas en el PDC 2008. Hoy voy a hablar de las novedades que más me ha llamado la atención, que son, los parámetros opcionales y los parámetros nombrados……
October 30th, 2008 11:16 AM
Esto está copiado de PHP probablemente, que lo permite hacer, por lo menos, desde su versión 4.