Sobes.tech
Junior — Middle

Selgitage C# keeles delegaatide kontseptsiooni ja nende peamist eesmärki.

sobes.tech AI

Vastus AI-lt

In C#, delegates are types that represent references to methods with a specific signature and return type. They allow storing and invoking methods as objects.

The main purpose of delegates:

  • To implement callbacks
  • To provide flexibility when calling methods, for example, for events and handling asynchronous operations
  • Used to implement an event-driven model

Example of a delegate:

// Delegate declaration
public delegate void Notify(string message);

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

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

Here, the Notify delegate can refer to any method that accepts a string and returns nothing.