Ich habe den folgenden Code:Kopieren Objektdaten zu Haufen Standort
public class Entity
{
public int Number;
public string Text;
}
System.Collections.Generic.List<Entity> list = new List<Entity>();
list.Add(new Entity() { Number = 100, Text = "hello1" });
list.Add(new Entity() { Number = 200, Text = "hello2" });
Entity sampleEntity = new Entity() { Number = 300, Text = "World" };
list[0] = sampleEntity // this does only replace the pointer in the list
list[0].Text = sampleEntity.Text; // this writes to the pointer in list
list[0].Number = sampleEntity.Number; // this writes to the pointer in list
Was ich möchte wissen, ob es der Durchführung eines memcopy der gesamten Objektdaten auf dem Heap jede mögliche Art und Weise ist -Location list[0]
Einstiegspunkte auf? Ich meine in C++ ist es ein einfaches dereferenzieren *list[0] = *entity;
Arbeiten auf dieser Ebene mit .net wird selten benötigt. vielleicht möchten Sie eine Klonmethode implementieren. –