Junior — Middle
Vysvetlite účel a fungovanie delegátov v kontexte programovania v C#.
sobes.tech AI
Odpoveď od AI
Delegáty v C# sú typy, ktoré predstavujú odkazy na metódy s určitým podpisom. Umožňujú volanie metód nepriamo, ich odovzdávanie ako parametre a implementáciu spätných volaní.
Hlavné body:
- Delegát definuje podpis metódy (typy parametrov a návratová hodnota).
- Môže byť priradený akýkoľvek spôsob kompatibilný s podpisom delegátu.
- Umožňujú implementovať udalosti a vzor pozorovateľa.
Príklad:
public delegate void Notify(string message);
public class Process
{
public Notify OnCompleted;
public void Start()
{
// ... práca
OnCompleted?.Invoke("Proces dokončený");
}
}
Tu sa delegát Notify používa na oznámenie o ukončení procesu.