2 qq 34193086 qq_34193086 于 2016.03.16 22:43 提问

关于成员变量和局部变量

堆中的成员变量变成引用后会跑到栈中么,创建一个引用型对象,调用构造方法,变量是局部变量么

3个回答

oyljerry
oyljerry   Ds   Rxr 2016.03.16 22:52
已采纳

不会 引用还绑定的还是堆变量

qq_34193086
qq_34193086 谢谢你啦,我是初学菜鸟,多多指教
一年多之前 回复
Longyu_wlz
Longyu_wlz   2016.03.17 07:32

堆与栈是两种不同的结构。栈一般又可成为函数栈,用来存储函数的局部变量以及被调用者寄存器的值(如果用到),还有传给子程序的参数等等。

栈在编译时便已经分配好,而堆(heap)确是在运行中动态创建的。

堆与栈分属不同的内存空间,没有直接的联系。在C语言中用malloc动态分配内存,这就是堆操作,在C++中用new动态分派内存,也是堆操作。

其实这里存在着编译与运行两大思想的论战。到底哪个好呢?

sl_18500
sl_18500   2016.03.17 09:33

成员变量是全局变量,放在栈中
局部变量放在堆中

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!