因为之前写的项目对象复制一直是写个clone方法,浅拷贝和深拷贝这里就不说了,突然想偷懒,取出List的对象直接更新指向是不是可以,于是写了下面的小例子测试下
public class PP
{
public int aa;
public string ss;
}
PP pp = new PP();
pp.aa = 111;
pp.ss = "test1111";
ppList.Add(pp);
PP tt = new PP();
tt.aa = 2222222;
tt.ss = "test222";
PP pp = ppList[0];
pp = tt;
string s = ppList[0].aa.ToString() + ppList[0].ss;
MessageBox.Show(s);
测试的结果:
事实证明这种投机取巧的想法是错误的,List的指向不会因取出的对象而变化