Powiel możliwe:
C#: Passing null to overloaded method - which method is called?Metoda przeciążenia i wartość zerowa
Rozważmy te 2 metod:
void Method(object obj) { Console.WriteLine("object"); }
void Method(int[] array) { Console.WriteLine("int[]"); }
gdy próbuję wywołanie:
Method(null);
w Visual Studio 2008 SP1 Otrzymuję int[]
.
Dlaczego tak jest?
Być może pyta, dlaczego kompilator faworyzuje to przeciążenie. – Vlad
Jego pytanie brzmi: dlaczego rozdzielczość przeciążenia rozwiązuje wartość null dla metody, która pobiera tablicę int, a nie tę, która przyjmuje obiekt. –
Zobacz to pytanie: http://stackoverflow.com/q/719546/25727 – Jan