Sobes.tech
Junior — Middle

Räägi mulle erinevatest delegaatide tüüpidest, mida sa tead

sobes.tech AI

Vastus AI-lt

C# keeles on delegaadid tüübid, mis esindavad viiteid meetoditele. Peamised delegaadi tüübid:

  • Lihtsad delegaadid — on selgelt määratletud, võivad viidata meetoditele kindla signatuuriga.

  • Multicast delegaadid — võivad sisaldada nimekirja meetoditest, mis kutsutakse järjest.

  • Action — sisseehitatud delegaat ilma tagastusarvuta, mille parameetrid on 0 kuni 16.

  • Func — sisseehitatud delegaat tagastusarvuga, parameetrid ja tulemuse tüüp on määratletud.

  • Predicate — delegaat, mis võtab ühe parameetri ja tagastab bool väärtuse.

Näide lihtsast delegaadist:

public delegate void Notify(string message);

Notify notify = message => Console.WriteLine(message);
notify("Hello");

Multicast delegaat võimaldab registreerida mitu meetodit:

notify += AnotherMethod;