Delegat je razred, ki definira vrsto metode, da jo lahko kot argument posreduje drugi metodi. Dogodek je posebna komisija.
1. Izjava o zaupanju
(1). delegat
Delegat
Delegate ima vsaj 0 parametrov in največ 32 parametrov ter ne more imeti vrnjene vrednosti ali določiti vrste vrnjene vrednosti.
Na primer, javni delegat int MethodtDelegate(int x, int y); Označuje, da obstajata dva parametra, in vrne int tip.
(2). Delovanje
Akcija je generični delegat brez vrnjene vrednosti.
Akcija predstavlja delegata brez parametrov in brez vrnjene vrednosti
Action<int,string> označuje delegata z vhodnim parametrom int in brez vrnjene vrednosti za niz
Action<int,string,bool> označuje delegata z vhodnimi parametri int,string,bool brez vrnjenih vrednosti
Action<int,int,int,int> pomeni, da so v in preneseni 4 parametri tipa int in ni vrnjene vrednosti
Akcija ima vsaj 0 parametrov in največ 16 parametrov, brez vrnjene vrednosti.
Primer:
(3). Func
Func je generični delegat z vrnjeno vrednostjo
Func<int> pomeni delegata brez parametrov in vrne vrednost int
Func<object,string,int> predstavlja delegata z vhodnim parametrom kot objektom, niz pa vrne vrednost int
Func<object,string,int> predstavlja delegata z vhodnim parametrom kot objektom, niz pa vrne vrednost int
Func<T1,T2,T3,int> predstavlja delegata z vhodnimi parametri T1, T2, ,T3 (generično), ki vrača vrednost int
Func ima vsaj 0 parametrov in največ 16 parametrov, ki se vrnejo glede na generično vrnjeno vrednost. Mora obstajati povratna vrednost, ne pa nična
Primer:
(4) .predikat
Predikat je generični delegat, ki vrne tip bool
Predikat<int> predstavlja delegata z vhodnim parametrom int, ki vrača bool
Predikat ima in samo en parameter, povratna vrednost pa je fiksna na bool
Primer:
|