Czytałem MSDN page o delegatach i wydają się proste. Potem patrzyłem na kod, który je wykorzystuje i widziałem to:Co robi ta metoda delegata?
public delegate void NoArguments();
public NoArguments Refresh = null;
Refresh = new NoArguments(Reset);
To ta trzecia linia, która mnie wprawia w zakłopotanie. Jak możesz new
delegata? To nie jest obiekt, to metoda, a raczej delegat do metody. Zgodnie z przykładem na stronie MSDN tworzenie instancji delegata odbywa się poprzez proste przypisanie, a nie przydział. Ponadto, dlaczego jest new
dla delegata przyjmującego parametr, Reset
, gdy deklaracja delegata nie przyjmuje parametrów?
Dzięki za wskazanie, że to rzeczywiście obiekt, a nie tylko wskaźnik funkcji. – johnbakers