【Unity|C#】基礎篇(4)——函數參數類型(值參/ref/out/params)


【學習資料】

  《C#圖解教程》(第5章)https://www.cnblogs.com/moonache/p/7687551.html
  電子書下載:https://pan.baidu.com/s/1mhOmBG0

 

【內容】 

    • 函數參數類型
    • 值參數:值類型、引用類型
    • 引用參數(ref)
    • 引用類型 作為 值參數與引用參數(ref) 的區別
    • 輸出參數(out)
    • 參數數組(params)

 


 【筆記】

  • 參數類型

    

 

  • 值參(形參改變不影響實參)
    • 在棧中 為形參 開辟空間
    • 將 實參的值 傳給 形參(值類型傳遞值,引用類型傳遞指向堆數據的引用)

       

 

  • 引用參數(ref)(形參改變,實參也跟隨改變)
    • 不會 為形參 在棧上 分配內存
    • 相當於:給實參起個別名,實參和形參是同一個變量

      

 

  • 引用類型作為 值參 與 ref參數 的區別
    • 作為值參:形參指向新的數據時,實參指向的數據不變

      

    • 作為ref參數:形參指向新的數據時,實參也指向新的數據(因為形參相當於是實參的別名)

      

 

  • 輸出參數(out)(與ref一樣,但是在函數結束前必須賦值

       

 

  • 參數數組(params):參數個數不固定
    • 在堆中 開辟 參數數組,將 實參 依次 賦值到 參數數組 中
    • 函數執行完后,釋放參數數組內存

      

 

    • void Show(params int[] inVals)
      {
          for (int i = 0; i < inVals.Length; ++i)
              Debug.Log(inVals[i]);
      }
      void Start()
      {
          Show(1);
          Show(1, 2);
          Show(1, 2, 3);
      }

 


免責聲明!

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



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