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.