前言:
Boxing
跟UnBoxing
在.net中,我們可能在無意識使用到但這個事情確會造成一些效能影響…
.NET兩種類型
在.NET有分兩種類型
- 值類型(int,double,char….)
- 參考類型(自行宣告的類別,string….)
而存放資料的方式也有兩種:
- 堆疊Stack
- 堆積Heap
談談Boxing和UnBoxing之前,我們先來了解Stack
和Heap
值類型(Value Type)會存取在Stack
記憶體區塊中
參考類型(Reference Type)內容會在Heap
記憶體區塊上,Stack會指向Heap上記憶體位置(有點像c++傳址)