看板 java 關於我們 聯絡資訊
※ 引述《Holocaust123 (Terry)》之銘言: : 由此可知 java 的函數若以陣列為引數,預設是傳址呼叫。 : 有沒有辦法改成傳值呼叫呢? 1. Java 沒有 Poninter,只有 Reference, 所以根本也不會有 Call by Address。 2. Java 也沒有 Call by Reference, 全部都只是 Call by Value。 你的程式遇到的情形, 其實是對 reference 變數做了 Call by Value, 因此傳入的參數是另一份 reference 但指向同一個物件, 對 reference 變數來說,這是 Call by Value。 詳情請參考本版 5054 討論串。 (光是本版大概就討論了三次以上囉,不過比較完整的我只找到 5054 這串) 要解決你的問題, 請自己對陣列進行複製。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.230.4.53
csihcs:就我的認知上C的call by address是call by value of pointe 05/31 12:11