Funciones delegadas en C#
Post date: Sep 7, 2010 8:11:57 AM
Los tipos delegados de C# permiten definir variables cuyo valor es una función. Al definir el tipo se especifican los parámetros y el tipo resultante:
delegate int calculoDelegado(int arg1, int arg2);
Una vez definido el tipo ya es posible definir delegaciones (variables con ese tipo):
static calculoDelegado calculo;
Para asignar valores a una variable de tipo delegado hace falta especificar cual es la función que se va a utilizar:
static int Sumar(int arg1, int arg2) { return arg1 + arg2; } static int Restar(int arg1, int arg2) { return arg1 - arg2; }
Para utilizar la variable, primero hay que asignarle una instancia:
calculo = new calculoDelegado(Sumar); Console.WriteLine(calculo(5,4)); calculo = new calculoDelegado(Restar); Console.WriteLine(calculo(5,4));
Al ejecutar esta secuencia de acciones se imprimen las líneas:
9 1
Cursos relacionados
Curso Visual C# básico
Curso Visual C# avanzado