ich einige grundlegende Konzepte zu verstehen, ich versuche:Nur-Lese-Ändern des Verhaltens einer Struktur
class Program
{
private static readonly MyStruct m = new MyStruct();
static void Main(string[] args)
{
//new MutableSample().RunSample();
Console.WriteLine(m.ChangeInternal());
Console.WriteLine(m.ChangeInternal());
Console.WriteLine(m.ChangeInternal());
Console.Read();
}
}
public struct MyStruct
{
private int x;
public int ChangeInternal()
{
this.x = this.x + 1;
return this.x;
}
}
Wenn ich diesen Code ausführen es gibt mir 1, 1, 1, aber wenn ich die entfernen „Read-only“ es sagt 1, 2, 3.
Kann mir jemand das erklären?
Ist es nur ich, oder das Beispiel von Eric Lippert ist genau wie die OPs? – mihai
@Mihai Es ist * wirklich * nah. Es gibt einige Unterschiede, die für das vorliegende Problem nicht relevant sind. – Servy