Avatar ·

Tiefes Klonen von Objekten in C#: Wie kopiert man ein komplexes Objekt korrekt mit allen verschachtelten Referenzen?

Hallo zusammen! Ich bin neu in C# und habe ein Problem beim Kopieren von Objekten. Ich habe eine Klasse `Person`, die Referenzfelder enthält, z.B. `List
`. Wenn ich versuche, eine Kopie durch einfache Zuweisung zu erstellen (`var copy = original;`), wirken sich Änderungen in `copy` auf `original` aus. Ich verstehe, dass dies eine flache Kopie (shallow copy) ist und ich eine tiefe Kopie (deep clone) benötige. Ich habe versucht, `ICloneable` zu implementieren, aber es erstellt eine flache Kopie. Ich habe versucht, jedes Feld manuell zu kopieren, aber das ist schrecklich, wenn es viele Objekte gibt und diese verschachtelt sind. Hier ist ein Beispiel meines Codes: ```csharp public class Address { public string Street { get; set; } public string City { get; set; } } public class Person { public string Name { get; set; } public int Age { get; set; } ```