Sobes.tech
Junior — Middle

Spiega il concetto di delegati nel linguaggio C# e la loro funzione principale.

sobes.tech AI

Risposta dell'AI

I delegati in C# sono tipi che rappresentano riferimenti a metodi con una firma e un valore di ritorno specifici. Permettono di memorizzare e chiamare metodi come oggetti.

Scopo principale dei delegati:

  • Consentono di implementare callback
  • Offrono flessibilità nella chiamata di metodi, ad esempio per eventi e gestione di operazioni asincrone
  • Sono usati per implementare un modello basato su eventi

Esempio di delegato:

// Dichiarazione del delegato
public delegate void Notify(string message);

class Program
{
    static void Main()
    {
        Notify notifyHandler = ShowMessage;
        notifyHandler("Ciao, delegati!");
    }

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

Qui, il delegato Notify può riferirsi a qualsiasi metodo che accetti una stringa e non ritorni nulla.