我有這樣一個類:創建一個新的類實例
Public Class Dog{
public Dog(string name, int age){
Name = name;
Age = age;
}
public string Name { get; set; }
public int Age { get; set; }
}
然後,我創建這個類
Dog jake = new Dog("Jake", 3);
的一個實例,當我試圖複製類和改變像
Dog buster = jake;
buster.Name = "Buster";
它的屬性我這樣做的時候,傑克的名稱將改變過
我該如何避免這種情況?
請注意,我正在使用的類包含如此多的屬性,如果我可以複製類並更改我想要的一個屬性,它將使我更容易。
看到這裏http://stackoverflow.com/questions/78536/deep-cloning-objects。現在,您只是將*引用*複製到對象,這就是爲什麼更改該對象的屬性同時改變兩個對象的原因。他們指的是同一個對象。 –
在C++中拷貝一個變量。不在C#http://www.albahari.com/valuevsreftypes.aspx –