close

堆疊Stack

堆積Heap

Stack中存放參數,區域變數 (數值型別(傳值))

Heap存放物件(參考型別)

雖然物件的內容是存放於Heap中,但是物件的參考(指標)是存放於Stack中

而Nullable屬於參考型別,所以也等同於上面那一句

Boxing

意指數值型別複製一份並轉為參考型別

例如一個單純的

int i = 42;

object o = i;

原本只有一個在stack中的42

會複製成 一個存在Heap中的參考型別object 並在Stack中增加一指標指向該Heap中object

反之則為unBoxing

將一個stack指向Heap中的參考型別資料複製一份到Stack中

所以會有Boxing小轉大 unBoxing大轉小的術語

但是再unBoxing時必須注意,先前Boxing這一object時原始型別,否則會出現InvalidCastException

arrow
arrow
    全站熱搜

    baechang 發表在 痞客邦 留言(0) 人氣()