构造函数里ref传递不是同一个地址?
问题描述:
public class MoveTest
{
public float a;
public MoveTest(ref float a)
{
this.a = a;
}
unsafe public void Print()
{
fixed (float* i = &a) ;
}
}
//其他模块
private float b = 0;
MoveTest m = new MoveTest(ref b);
fixed (float* i = &b) ;
m.Print();
实测改变ab的值都对彼此无任何影响,而且debug下地址也不一样,这该怎么传地址啊?
答
你想要做什么样的事呢?通常unsafe代码是很少使用的。
也许你需要的链接: https://stackoverflow.com/questions/3261402/what-is-the-equivalent-to-passing-by-address-in-c-sharp