Unity学习(二)ref和out参数

ref参数

使用ref的参数,在方法执行完成后,对参数的改变能反映到变量上

测试:

public class TestRef : MonoBehaviour
{
    private void Start()
    {
        int num1 = 0;
        int num2 = 0;
        Test1(ref num1, num2);
        Debug.Log("num1:" + num1 + "\nnum2:" + num2);
    }

    private void Test1(ref int num1, int num2)
    {
        num1 = 10;
        num2 = 10;
    }
}

输出:

 

 一:传入参数之前,必须给参数赋值。

 二:调用方法时,必须加 ref 关键字。

out参数

使用out的参数,方法执行完后,参数的值会受到方法的影响

测试:

  

    private void Start()
    {
        int num;
        Test2(out num);
        Debug.Log("num:" + num);
    }

    private void Test2(out int num)
    {
        num = 10;
    }

结果:

 

注:

 在方法调用前,可以不对参数赋值

 在方法内部,必须对out修饰的参数赋值

猜你喜欢

转载自www.cnblogs.com/CCLi/p/12626460.html