Sobes.tech
Junior — Middle

Puteți explica conceptul de delegați și rolul lor în programare?

sobes.tech AI

Răspuns de la AI

Delegatii în C# sunt tipuri care reprezintă referințe la metode cu o semnătură și un tip de returnare specific. Ele permit transmiterea metodelor ca parametri, stocarea lor în variabile și apelarea lor dinamică.

Rolul delegaților:

  • Permite implementarea callback-urilor.
  • Sunt folosiți pentru evenimente și gestionarea evenimentelor.
  • Oferă flexibilitate și extensibilitate codului.

Exemplu de utilizare a unui delegat:

// Declararea unui delegat
public delegate int Operation(int x, int y);

class Program
{
    static int Add(int a, int b) => a + b;
    static int Multiply(int a, int b) => a * b;

    static void Main()
    {
        Operation op = Add;
        Console.WriteLine(op(3, 4)); // 7

        op = Multiply;
        Console.WriteLine(op(3, 4)); // 12
    }
}

Astfel, delegații permit selectarea și apelarea metodelor în mod dinamic.