值傳遞, 只是傳遞副本, 而引用傳遞, 是傳遞乙個位址~
using system;
using system.collections.generic;
using system.linq;
using system.text;
!",v);
console.writeline("引用傳遞,結果為!", r);
} static
void doworkval(int param)
static
void doworkref(ref
int param) }
} 對於值傳遞, 只是傳遞個副本, 因此void的函式沒有返回值, 所以在輸出v的時候還是原來的值, 沒有變化. 對於引用傳遞, 則是把位址傳遞過去, 因此在函式doworkref呼叫後, r也會隨著變化, 因此會+10, 所以輸出的結果就是52了~
引用傳遞與值傳遞
看 define n 10000 define n 10000 ini set memory limit 1g function microtime float function printarray0 arr 引用傳遞 function printarray1 arr 值傳遞 for i 0 i ...
值傳遞與引用傳遞
分析 形參是實參的拷貝,改變形參的值並不會影響外部實參的值。由於x 1 是在test方法棧裡面執行的,所以只會改變test方法棧裡面的x值,而不會改變main方法棧裡面的x值 形參的改變不會影響實參 引用傳遞,傳遞的是實際引數的位址.傳遞的是值的引用,也就是說傳遞前和傳遞後都指向同乙個引用 同乙個記...
值傳遞與引用傳遞
一般是對於基本型別而言,傳遞的是變數值的乙個副本,因此,對變數副本進行相關修改,不會影響原來的資料。如下例子 public static void main string args public static void add int i 結果 一般是對於物件型變數而言,傳遞的是物件變數的位址副本 ...