Ich habe Probleme zu verstehen, warum Arrays in C# kovariant sind und welche Vorteile diese Kovarianz haben kann. Betrachten Sie das folgende triviale Codebeispiel:Warum sind C# -Arrays kovariant und welche Vorteile bringt es?
object[] myArray = new string[1];
myArray[0] = 1;
Dieser Code wird in Ordnung kompilieren, aber ohne Umstände und vielleicht wenig überraschend zur Laufzeit explodieren.
Wenn ich versuche, dasselbe mit Generics zu versuchen, würde der Compiler mich angrinsen und ich würde meine Dummheit in einem frühen Stadium erkennen, also meine Frage ist: Warum erlaubt der C# -Compiler diese Kovarianz mit Arrays und darüber hinaus Was sind die potenziellen Vorteile?
mquander gewinnt, weil er den Blog zitiert, anstatt nur darauf zu verlinken. –
@ Jon B - und zum Zitieren der _relevant_ Bit. – Oded
Danke für die Links zu weiteren Informationen. Sehr hilfreich. – nukefusion