位置:首頁 > 高級語言 > C#教學 > C#傳遞參數引用

C#傳遞參數引用

引用參數是一個引用變量的存儲位置。當你按引用傳遞參數,不像按值傳遞參數,新的存儲位置冇有為這些參數創建。引用參數代表相同的存儲單元被提供給該方法的實際參數。

在C#中,聲明使用ref關鍵字的引用參數。下麵的例子說明了這一點:

using System;
namespace CalculatorApplication
{
   class NumberManipulator
   {
      public void swap(ref int x, ref int y)
      {
         int temp;

         temp = x; /* save the value of x */
         x = y;   /* put y into x */
         y = temp; /* put temp into y */
       }
   
      static void Main(string[] args)
      {
         NumberManipulator n = new NumberManipulator();
         /* local variable definition */
         int a = 100;
         int b = 200;

         Console.WriteLine("Before swap, value of a : {0}", a);
         Console.WriteLine("Before swap, value of b : {0}", b);

         /* calling a function to swap the values */
         n.swap(ref a, ref b);

         Console.WriteLine("After swap, value of a : {0}", a);
         Console.WriteLine("After swap, value of b : {0}", b);
 
         Console.ReadLine();

      }
   }
}

讓我們編譯和運行上麵的程序,這將產生以下結果:

Before swap, value of a : 100
Before swap, value of b : 200
After swap, value of a : 200
After swap, value of b : 100

它表明,該值已在交換函數內被改變,這種變化反映在Main函數中。