欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

值类型和引用类型在内存上的存储区域

程序员文章站 2022-11-30 20:05:14
程序员开发经常涉及到的内存区域:堆、栈、静态存储区域。 值类型和引用类型的区别: 本章节,暂时只介绍第1个区别:值类型和引用类型在内存上的存储区域。 常用值类型:int、double、bool、char、decimal、struct、enum 常用引用类型:string、自定义类、数组 1.值类型存 ......

程序员开发经常涉及到的内存区域:堆、栈、静态存储区域。

值类型和引用类型的区别:

  1. 值类型和引用类型在内存上存储的地方不一样。值类型的值是存储在内存的栈当中。引用类型的值是存储在内存的堆中。
  2. 在传递值类型和传递引用类型的时候,传递方式不一样。值类型我们称之为值传递,引用类型我们称之为引用传递。

本章节,暂时只介绍第1个区别:值类型和引用类型在内存上的存储区域。

 

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

常用引用类型:string、自定义类、数组


 

 1.值类型存储图解:

值类型和引用类型在内存上的存储区域

 


 

 2.引用类型-字符串存储图解:

值类型和引用类型在内存上的存储区域

 

 


 

3.引用类型-自定义类存储图解:

值类型和引用类型在内存上的存储区域


 

 引用类型存储总结:

引用类型的对象存储在堆中,并且会分配一个内存地址。该内存地址会存储到栈空间,栈空间名为变量名。

即读取引用类型对象的顺序:变量—>内存地址—>实例对象。