C#栈、堆的理解(2)

接上一遍博文有关值类型和引用类型的相关概念。

所有值类型数据存放:栈(内存)

引用类型的数据存放:堆(内存)

栈:可以认为是一本书的目录部分称其为栈。栈可快速检索,运行速度比堆大,而且栈的空间小得多。所以所有值类型(因为值类型数值运算量较大)都存放在栈中,提升程序性能

堆:其内容部分称其为堆。而堆,通过数组下标去检索不是特别的吃运算性能。所以一般存放引用类型。从这两个方面也可以解释值类型和引用 类型的区别。

可以通过 ReeferenceEquals方法去查看是否指向同一个内存地址。

如果是:true(引用类型),反之:false(值类型)

 

posted @ 2020-04-25 18:50  CR7Ronaldo  Views(114)  Comments(0Edit  收藏  举报