Junior — Middle
Opowiedz mi o różnych typach delegatów, które znasz
sobes.tech AI
Odpowiedź od AI
W C#, delegaty to typy, które reprezentują odwołania do metod. Główne typy delegatów:
-
Proste delegaty — definiowane jawnie, mogą odwoływać się do metod o określonej sygnaturze.
-
Multicastowe delegaty — mogą zawierać listę metod wywoływanych kolejno.
-
Action — wbudowany delegat bez wartości zwrotnej, z parametrami od 0 do 16.
-
Func — wbudowany delegat z wartością zwrotną, parametry i typ wyniku są określane.
-
Predicate — delegat przyjmujący jeden parametr i zwracający bool.
Przykład prostego delegata:
public delegate void Notify(string message);
Notify notify = message => Console.WriteLine(message);
notify("Hello");
Multicastowy delegat pozwala na subskrypcję wielu metod:
notify += AnotherMethod;