2016年9月8日 星期四

[C#] Ref / Call by Reference

遇到就筆記一下。MSDN


Call by reference

虛擬參數(formal parameter)與實際參數(actual parameter)位於相同的記憶體位址。
因此function內對於ref value 變數值的變更, 會直接影響到外面的value變數。

使用方法: 加上 ref



簡單來說…

1. ref 是進行 call by reference 的行為,即是改變 function 引數的值,外面的參數也會跟著改變。
2. function 的 ref 的參數,在傳入之前必須要先初始化。


e.g. 使用ref 的參數,必須在傳遞參數前先初始化變數

int num = 99;  
Test(ref num);

public void Test(ref int num)
{
      //TODO something ...
}


Reference:
1.https://gdfan1114.wordpress.com/2005/06/13/c-學習筆記02-繼承-參數傳遞/
2.http://blog.xuite.net/merci0212/wretch/141175640-%5B轉載%5DC%23+-+函數call+by+value%2Freference
3.http://unicorntudo.blogspot.tw/2013/07/c7-call-by-valuereference.html
4.http://unicomleaner.blogspot.tw/2013/04/crefout.html

沒有留言:

張貼留言