close
Call by Value:
會複製原來的值一份 當作副本 不會修改原來的值
call by value 等於複製一個數值到function
Call by Address:
用指標當作參數 因為指標的副本 和本尊都是指向同一區塊的記憶體 所以可以修改原先的值
Call by Reference:
Reference 只是變數的別名 不會複製原先值的一部份 直接取用 並在參數傳入時
將參考值參數出值化
call by reference 等於複製一個地址到function
如果value的體積是基本型別,即int, double之類,call by value不會影響效率。
如果value的體積大,例如 string 或者使用者型別如 class, struct之類,最好用call by reference,因為只需要複製一個地址到function就可以,而地址的體積同int型別一樣。
對大體積型別,你一樣可以call by value,只是效率慢而已。
call by reference 等於複製一個地址到function
如果value的體積是基本型別,即int, double之類,call by value不會影響效率。
如果value的體積大,例如 string 或者使用者型別如 class, struct之類,最好用call by reference,因為只需要複製一個地址到function就可以,而地址的體積同int型別一樣。
對大體積型別,你一樣可以call by value,只是效率慢而已。
全站熱搜
留言列表