ref函数
Test c = new Test();
c.Message = "初始值";
TestRef(c);
static void TestRef(Test t)//调用时复制c引用给t,此时t和c指向相同的地址
{
t = new Test();//t指向新的地址,与c一点关系都没有了
t.Message = "对象已赋值";//所以在这里,c.Message依然是"初始值";
}
而ref则不会有这个问题,当t=new Test()时,c也指向新的地址,参考6楼的例子,看看它们是不是同一个对象就知道了。

浙公网安备 33010602011771号