By tego dokonać musimy stworzyć obiekt delegatu i jako parametr podać nazwę funkcji, na którą ma wskazywać. int funkcja(int x, int y) return x + y; //obiekt delegatu wskazujący na funkcję DelegatBin nowyDelegat = new DelegatBin(funkcja); //istnieje również taka możliwość przypisania nowyDelegat = innaFunkcja; Prosty przykładowy program pokazujący wykorzystanie class Program { delegate int DelegacjaM(int x, int y); static int Suma(int x, int y)
return x + y;
static int Roznica(int x, int y)
return x - y;
static void Main(string[] args)
DelegacjaM delegat = new DelegacjaM(Suma); Console.WriteLine("Dodawanie 50+50 " + delegat(50,50) );// zauważmy w tym miejscu że obiekt delegatu zostaje wywołany jak zwykła funkcja
delegat = Roznica; Console.WriteLine("\nOdejmowanie 30-20 " + delegat(30,20) );
Console.ReadLine();
Delegaty można wykorzystać do pisania metod-wtyczek. Zmienna delegatu może otrzymać wartość w czasie wykonywania programu.