3月 29, 2010

[ASP.NET] Array copy

要實現 Array Copy 的方法有幾種:

(1) 使用 Array.Copy()
在行為上屬於 Deep Copy,也就是說原本的陣列資料會完全複製一份。

int [] src = new int[10];
int [] dst = new dst[10]; /* 由於是 Deep Copy 所以要配置空間 */
Array.Copy(src, dst, src.Length);

(2) 使用 Array.Clone()
在行為上屬於 Shallow Copy,也就是只會拷貝位址(address),
真正的實體只會存在一份,多個 pointer 指向同一陣列。

int [] src = new int[10];
int [] dst = Array.clone(src); /* 注意這邊的用法 */

沒有留言:

張貼留言