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.