Sobes.tech
Junior — Middle

Môžete vysvetliť koncept delegátov a ich úlohu v programovaní?

sobes.tech AI

Odpoveď od AI

Delegáty v C# sú typy, ktoré predstavujú odkazy na metódy s určitým podpisom a typom návratu. Umožňujú odovzdávať metódy ako parametre, ukladať ich do premenných a dynamicky ich volať.

Úloha delegátov:

  • Umožňujú implementáciu spätných volaní (callbacks).
  • Používajú sa pre udalosti a spracovanie udalostí.
  • Zabezpečujú flexibilitu a rozšíriteľnosť kódu.

Príklad použitia delegáta:

// Vyhlásenie delegáta
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
    }
}

Týmto spôsobom delegáty umožňujú dynamicky vyberať a volať metódy.