黑马程序员_给方法传递参数: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}" + "\n", 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;

        }

    }

}

 

 

你可能感兴趣的:(传递参数)