Derzeit ähnelt mein Code folgendermaßen aus:Wie kann ich ein nicht beschreibbares Array in C# deklarieren?
private static readonly int[] INTARRAY = {1, 2, 3};
Dies verhindert, dass ich INTARRAY
auf eine neue Instanz von int[]
außerhalb des statischen Konstruktor aus zuweisen, aber es immer noch erlaubt, mich zu den einzelnen int
Elementen zuweisen.
Zum Beispiel:
INTARRAY[1] = 5;
Wie kann ich dieses Array machen vollständig schreibgeschützt? Dies ist ein Array von Werttypen, dem in der Deklaration ein Array-Initialisierer zugewiesen ist. Wie kann ich diese Anfangswerte unbegrenzt beibehalten?
Beachten Sie auch, dass Sie, wenn Sie es als Array benötigen, einfach '.ToArray()' auf der Liste verwenden. Je nach dem, wofür Sie es verwenden, ist auch der Typ "ReadonlyCollection" sinnvoller als "List". – Nobody