小弟想請教一個關於物件陣列複製的問題
class obj
{
int a;
int b;
}
假設有obj1,obj2兩個物件陣列
object obj1 = new object[2]; (後續再設物件的值)
接著 new一個同樣大小的物件陣列
object obj2 = new object[2];
然後複製
Array.Copy(obj1, obj2, 2);
把obj1複製給obj2後,此時若更改了obj2的值
ex. obj2[0].a = 2;
這時候obj1[0].a 也會被更改(= 2)
我的期望是obj[0].a應該不要被更改
所以想請問有沒有甚麼方法可以達到我的複製效果
又為什麼會有上述的情形發生呢?
先感謝各位了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.47.40
→
05/30 17:09, , 1F
05/30 17:09, 1F
→
05/30 20:13, , 2F
05/30 20:13, 2F
→
05/30 20:14, , 3F
05/30 20:14, 3F
→
05/30 22:37, , 4F
05/30 22:37, 4F
→
05/30 23:13, , 5F
05/30 23:13, 5F
→
05/30 23:14, , 6F
05/30 23:14, 6F
推
05/31 08:56, , 7F
05/31 08:56, 7F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
問題
1
7