close
睡前翻書翻到的。然後上msdn發現...嘿嘿,竟然沒講。
http://msdn.microsoft.com/zh-tw/library/14akc2c7(v=vs.100).aspx
這有點難用程式碼寫出來,不過我覺得應該用個...一些圖表示,有空在畫好了。
// 預備畫圖...
這個關鍵字簡單來說就跟pointer概念上是一樣的,但是.....在C#裡面,假設你是用Object的話,他本身在傳遞上就是Call by reference。
但是你如果在這個動作上再幫它加上 ref 關鍵字會發生一件很有趣的事情....。
"在方法呼叫(method call)的時候,編譯器在執行的時候將不會再Stack裡面額外產生新的記憶體空間來存放那個object 的 ref,而是直接變成一個Alias"
<<程式碼只加一咪咪,但是卻無形中會幫系統省了不少記憶體>>
全站熱搜