在堆上的堆栈类上的结构

时间:2013-12-05 14:46:47

标签: c# heap stack-memory

每个人都知道结构是值类型,类是引用类型,因此结构在堆栈上分配,并且对象在堆上分配。

我想知道的是,什么是在堆栈上分配的东西的含义,而不是在堆上分配的东西?

1 个答案:

答案 0 :(得分:1)

在堆栈上分配内存的一个一般含义是,一旦它离开作用域就会丢失(例如,函数/方法返回)。堆内存可以持续更长时间,不必担心这样的事情。

<强>更新
我没有提到的另一个重要项目是堆内存必须由某人管理。根据语言,这可以是程序员(C,C ++等),垃圾收集器(Java,C#等)。如果堆内存在使用完后没有被清除,则最终会导致内存泄漏。