给方法传递参数:ref参数和out参数

/*--------------------------------------------------- 给方法传递参数:ref参数和out参数 (P106) ---------------------------------------------------*/

// ***********************************************************************************************************************************************
// **
// ** ❤ ref参数:可以迫使值参数通过引用传递给方法,则给方法对变量所做的任何改变都会影响原来对象的值
// **
// ** 注意:1.调用该方法时,也需要添加ref关键字①
// **      2.C#仍要求对传递给方法的参数进行初始化②
// **
// ** ❤ out参数:1.当在方法的输入参数前加上out关键字时,传递给方法的变量可以不初始化③
// **            2.该变量通过引用传递,所以在从被调用的方法中返回时,方法对该变量进行的任何改变都会保留下来
// **            3.在调用该方法时,还需要使用out关键字④
// **
// ***********************************************************************************************************************************************


using System;

namespace Wrox.ProCSharp.Basics
{
    class ParameterTestSemple
    {
        public static void Main()
        {
            int[] intArray = { 0 };  //
            int i = 0;  //
            int j;  //

            Console.WriteLine("intArray[0] is: {0}", intArray[0]);
            Console.WriteLine("i is: {0}" + "
", i );

            Console.WriteLine("ParameterChange...");
            Parameter(intArray, ref i, out j);  //①④

            Console.WriteLine("intArray[0] is: {0}", intArray[0]);
            Console.WriteLine("ref i is: {0}", i);
            Console.WriteLine("out j is: {0}", j);

            Console.ReadKey();
            return;
        }

        public static void Parameter(int[] intArray, ref int i, out int j)  //ref参数和out参数
        {
            intArray[0] = 100;
            i = 100;
            j = 100;
        }
    }
}
原文地址:https://www.cnblogs.com/gyt-xtt/p/3641870.html