C# 中按值傳遞與按引用傳遞引數有何區別?
引用引數
引用引數是對變數記憶體位置的引用。引用引數表示與提供給方法的實際引數相同的記憶體位置。
在按引用傳遞引數時,與值引數不同,沒有為這些引數建立新的儲存位置。
按值傳遞
這是向方法傳遞引數的預設機制。在此機制中,呼叫方法時,將為每個值引數建立新的儲存位置。
實際引數的值被複制到其中。因此,在方法內對引數所做的更改不會對引數產生影響。
廣告
引用引數是對變數記憶體位置的引用。引用引數表示與提供給方法的實際引數相同的記憶體位置。
在按引用傳遞引數時,與值引數不同,沒有為這些引數建立新的儲存位置。
這是向方法傳遞引數的預設機制。在此機制中,呼叫方法時,將為每個值引數建立新的儲存位置。
實際引數的值被複制到其中。因此,在方法內對引數所做的更改不會對引數產生影響。