Czy mogę zdefiniować 2 delegatów o tej samej nazwie, ale różnych parametrach?
Próbowałem zdefiniować zastępowanie delegata międzyInt32
iIntPtr
. Dlaczego następujące przeciążenia są nielegalne?
public delegate int EnumWindowsCallback (System.IntPtr hWnd, int lParam);
public delegate int EnumWindowsCallback (System.IntPtr hWnd, System.IntPtr lParam);
To wygląda dość dziwnie. Oba są strukturami, ale różnią się i implementują z różnych interfejsów.
Pomyśl o tym, nigdy wcześniej nie próbowałem przeciążać delegata. Czy to jest legalne, a jeśli tak, to dlaczego?
AKTUALIZACJA: Po przejrzeniu odpowiedzi i kilku innych postów SO byłem zaskoczony, że delegatów nie można zadeklarować nawet przy różnej liczbie parametrów. Nadal zastanawiam się, dlaczego nie można tego rozwiązać w czasie wykonywania.