C 中的引用傳遞與值傳遞
在C 中向函數傳遞參數時,有兩種主要方法:按值傳遞和透過引用傳遞。理解這兩種方法之間的區別對於有效編碼至關重要。
按值傳遞
按值傳遞時,會在函數作用域內建立參數的副本。該副本有其自己的參考文獻,與原始論點不同。因此,修改函數內部的局部變數對函數外部的原始物件沒有影響。
按引用傳遞
按引用傳遞,另一方面,授予函數對原始物件的直接存取權。然而,這個術語有不同的解釋:
參數與參數引用
有些人將引用傳遞稱為傳遞被引用的對象,而不是參數本身。這與按值傳遞不同,後者在函數內建立一個新物件。
物件的可變性
其他人聲稱按引用傳遞意味著物件不能在被呼叫者內部進行修改。在此視圖中,修改物件值的函數會在函數範圍內和範圍外影響該物件。
依引用傳遞的定義
為了澄清這一混亂,讓我們定義按引用傳遞如下:
當且僅當相應的參數具有引用類型並直接綁定到該參數時,參數才會按引用傳遞表達。在所有其他情況下,它都是按值傳遞。
按引用傳遞與值傳遞的範例
考慮以下範例:
按值傳遞:
傳遞參考:
依引用傳遞和按值傳遞的意思
以上是C 中的引用傳遞與值傳遞:有什麼區別以及何時應該使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!