Delegados en C# - Cómo usarlo

Delegados en C# - Cómo usarlo

Los delegados a menudo se usan en C# para implementar eventos y devoluciones de llamada. Al crear un delegado que pueda asignarse a un método, puede crear un mecanismo para que otras partes de su código se notifiquen cuando ocurra un evento en particular, o para proporcionar un método que se llame cuando se complete una determinada acción. Los delegados son una herramienta poderosa en el lenguaje C# y son una parte esencial de muchas técnicas de programación avanzada.

Delegados en C#

Delegate es similar a un puntero de función en C o C ++, pero con capacidades adicionales como combinar múltiples métodos en un solo delegado, invocar una lista de métodos en secuencia y pasar parámetros a los métodos, aquí está la sintaxis para él:

delegado público ()

En la sintaxis anterior, es el tipo de retorno del método al que señala el delegado. es el nombre del delegado, y son los parámetros que toma el método.

Cómo usar delegados en C#

Para usar un delegado, debe definir primero un tipo delegado, que especifica la firma del método o métodos a los que puede hacer referencia. Se puede definir un tipo delegado utilizando la palabra clave delegada, seguido del tipo de retorno, el nombre del delegado y la lista de parámetros para el método o métodos que puede hacer referencia. Para ilustrar el uso de delegados en C Sharp, he dado un código de ejemplo que realiza una adición y resta simple:

usando el sistema;
Delegado público int enormcalculation (int x, int y);
Calculadora de clase pública

public int add (int x, int y)

return x + y;

Public Int Recher (int x, int y)

regreso x - y;


programa de clase

static void main (string [] args)

Calculadora calculadora = nueva calculadora ();
Cálculo de Cálculo realizado Delegate = Calculadora.Agregar;
int resultado = Cálculo Delegado (5, 3);
Consola.WriteLine ($ "además = resultado");
Cálculo Delegate = Calculadora.Sustraer;
resultado = Cálculo Delegado (5, 3);
Consola.WriteLine ($ "subtracción = resultado");
Consola.Readline ();

Primero se define el Delegate Performcalculation que toma dos parámetros enteros y en devoluciones le da a un entero entero. También define una clase de calculadora con dos métodos: agregue y reste que realice operaciones de suma y sustracción respectivamente.

En el método principal, se crea una instancia de la clase de calculadora y luego, el método Agregar se asigna a un cálculo de variable delegado degate. Esto significa que Cálculo Delegate ahora se puede usar para llamar al método Agregar de la clase de calculadora. El método Agregar se llama usando Cálculo Delegado con los argumentos 5 y 3.

A continuación, el Delegado de cálculo se asigna al método RESTA. Esto significa que Cálculo Delegate ahora se puede usar para llamar al método Restar de la clase de calculadora. El método de resta se llama mediante Cálculo Delegado con los argumentos 5 y 3. Se llama a la función Readline () para evitar que la ventana de la consola se cierre de inmediato, aquí está la salida del código:

Conclusión

Los delegados se usan comúnmente en C# para el manejo de eventos, funciones de devolución de llamada y como una forma de aprobar funciones como argumentos a otras funciones. Proporcionan una forma flexible de manejar las funciones de una manera orientada a objetos, lo que facilita escribir un código.