Sobes.tech
Junior — Middle

Explique el concepto de delegados en el lenguaje C# y su función principal.

sobes.tech AI

Respuesta de la IA

Los delegados en C# son tipos que representan referencias a métodos con una firma y un valor de retorno específicos. Permiten almacenar y llamar a métodos como objetos.

El propósito principal de los delegados:

  • Permiten implementar callbacks
  • Proporcionan flexibilidad al llamar a métodos, por ejemplo, para eventos y manejo de operaciones asíncronas
  • Se utilizan para implementar un modelo basado en eventos

Ejemplo de delegado:

// Declaración del delegado
public delegate void Notify(string message);

class Program
{
    static void Main()
    {
        Notify notifyHandler = ShowMessage;
        notifyHandler("¡Hola, delegados!");
    }

    static void ShowMessage(string msg)
    {
        Console.WriteLine(msg);
    }
}

Aquí, el delegado Notify puede referirse a cualquier método que acepte una cadena y no devuelva nada.