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;