Avatar ·

Was ist der Unterschied zwischen const und readonly in C#?

Hallo zusammen! Ich bin neu in C# und verwechsle ständig die Schlüsselwörter `const` und `readonly`. Anscheinend machen beide den Wert unveränderlich, aber ich habe das Gefühl, dass das nicht ganz stimmt. Ich habe diesen Code: ```csharp public class MyClass { public const int MaxAttempts = 5; public readonly string ConnectionString = "localhost"; public void Test() { // MaxAttempts = 10; // Fehler - const kann nicht geändert werden // ConnectionString = "new"; // Fehler - readonly kann nicht geändert werden } } ``` Beide Felder können nach der Initialisierung nicht geändert werden. Aber worin liegt dann der Unterschied? Ich habe gehört, dass `const` zur Compile-Zeit arbeitet und `readonly` zur Runtime. Was bedeutet das in der Praxis? Wann sollte ich `const` und wann `readonly` verwenden? Und warum kann ich die Initialisierung