传送门:https://www.cnblogs.com/moonache/p/6063051.html
class C { public int value = 0; } // 实参和形参是2个变量,但指向同一个对象 void changeC1(C c) { c.value = 10; c = new C(); // new之后,形参c指向新的对象 c.value = 30; } // ref : 形参是实参的引用,是同一个变量 void changeC2(ref C c) { c.value = 10; c = new C(); // new之后,形参和实参都指向新的对象 c.value = 30; } // 调用 C m_c1 = new C(); // C m_c2 = new C(); // changeC1(m_c1); // 结果为 10 changeC2(ref m_c2); // 结果为 30
void Show(params int[] inVals) { for (int i = 0; i < inVals.Length; ++i) Debug.Log(inVals[i]); } void Start() { Show(1); Show(1, 2); Show(1, 2, 3); }
【Unity|C#】基础篇(3)——函数参数(值参/ref/out/params)
原文:https://www.cnblogs.com/shahdza/p/12236977.html