Un delegat este o referință de tip sigur la o metodă (ca un pointer la funcție) — vă permite să tratați metodele ca date: să le stocați, să le transmitiți ca argumente și să le invocați. Evenimentele sunt un pattern construit pe delegați pentru modelul publish-subscribe (observer). Ele sunt la baza callback-urilor, LINQ și programării bazate pe evenimente în C#.
Delegații — metodele ca valori
;
Operation = (a, b) => a + b;
Operation multiply = (a, b) => a * b;
result = (, );
=> op(x, y);
Apply(multiply, , );
