值類型和引用類型在內存上的存儲區域


程序員開發經常涉及到的內存區域:堆、棧、靜態存儲區域。

值類型和引用類型的區別:

  1. 值類型和引用類型在內存上存儲的地方不一樣。值類型的值是存儲在內存的棧當中。引用類型的值是存儲在內存的堆中。
  2. 在傳遞值類型和傳遞引用類型的時候,傳遞方式不一樣。值類型我們稱之為值傳遞,引用類型我們稱之為引用傳遞。

本章節,暫時只介紹第1個區別:值類型和引用類型在內存上的存儲區域。

 

常用值類型:int、double、bool、char、decimal、struct、enum

常用引用類型:string、自定義類、數組


 

 1.值類型存儲圖解:

 


 

 2.引用類型-字符串存儲圖解:

 

 


 

3.引用類型-自定義類存儲圖解:


 

 引用類型存儲總結:

引用類型的對象存儲在堆中,並且會分配一個內存地址。該內存地址會存儲到棧空間,棧空間名為變量名。

即讀取引用類型對象的順序:變量—>內存地址—>實例對象。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM