Erzeugen einer neuen Instanz einer Liste in C#

Ich habe ein problem bei der Verwendung von C#, wenn ich initialisieren einer bestimmten Liste, sagen wir List<T> exampleList mit einem anderen bereits vorhandenen Liste, können sagen, toModify wie diese: List<T> exampleList = new List<T>(toModify). Wenn ich später ändern toModify Liste der neu erstellten Liste auch ändert sich. Wenn es geht, den Wert durch Referenz sollte nicht den Wert von exampleList bleiben die gleichen, da war es generiert aus den anderen?

TLDR: Wert einer Liste, die ich initialisieren mit einer anderen Liste(zweite Liste) ändert, wenn ich die zweite Liste. Ich komme aus einem Java-hintergrund und kann nicht verstehen, warum dies geschieht. Ich habe immer zu verwenden-Klon?

  • C#'s Verhalten ist genau das gleiche wie Java' s Verhalten in dieser Hinsicht. Können Sie erklären, was Sie meinen, wenn Sie sagen, dass Sie "ändern" in der Liste? Vielleicht bieten einen minimalen code-Beispiel, um zu zeigen das Verhalten, das Sie beobachten?
  • C# - Konzepte: Wert-vs. Referenztypen
Schreibe einen Kommentar