Avatar ·

Wie deklariere ich ein konstantes Array in C#? Problem mit const und mögliche Lösungen

Hallo zusammen! Ich bin ein C#-Anfänger und habe ein Problem beim Versuch, ein konstantes Array zu deklarieren. Ich möchte ein String-Array erstellen, das sich während der Programmausführung nie ändern soll. Ich versuche es so: ```csharp public const string[] DaysOfWeek = { "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So" }; ``` Aber der Compiler gibt einen Fehler aus: "The expression being assigned to 'DaysOfWeek' must be constant". Ich verstehe, dass `const` nur für einfache Typen (int, double, string) funktioniert, nicht für Referenztypen wie Arrays. Ich brauche jedoch genau konstantes Verhalten – das Array soll unveränderlich sein und einmal initialisiert werden. Ich habe gesehen, dass man `readonly` verwenden kann, aber das ist nicht ganz dasselbe wie `const`. Mit `readonly` kann das Array im Konstruktor erstellt werden, aber seine Elemente können nach der Initialisierung immer noch geändert werden. Zum Beispiel: ```csharp public readonly string[] DaysOfWeek = new string[] { "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So" }; ``` Aber dann