C#之實參和形參


1.值類型

   例如:我們定義一個函數   

static void Exchange(int x, int y)
   {
      int flag = x;
      flag = y;
      y = x;
      x = flag;
    }

其中,int x ,int y 為形參,我們可以通過如下方式進行調用函數,調用時方法名,參數個數、參數類型都要對應一致,如下

 static void Main(string[] args)
   {   
        int a = 2;
        int b = 5;
Exchange(a, b);
Console.WriteLine("a="+a.ToString()+"\r\n"+"b="+b.ToString());

}

int屬於值類型所以在調用Exchange(a,b)方法的時候,程序會給a和b分別復制一個相同的a和b,然后去執行方法,當方法執行結束之后,根據GC機制,剛剛分配的地址會被清除掉,所以在執行Exchange(a,b)之后,Main方法的a和b值是沒有發生變化的。方法參數為值類型時,我們把a可以理解為一個主演,Exchange方法可以理解為做一個危險事情,做這個危險事情的時候,導演為防止主演受傷,給主演找個外貌相似的替身,替代主演去完成這個危險的事情,當替身完成這個危險事情的時候,替身的狀態(受傷或者沒有受傷)不會改變主演的狀態。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM