C++类库中静态函数什么时候定义、另外类中的成员变量是保存在堆中还是栈中?

2024-11-25 14:40:21
推荐回答(2个)
回答1:

1、静态方法和静态变量在编译阶段分配好的,动态方法和动态变量是在运行阶段才分配内存的,就这点区别。

2、成员变量保存在堆(数据段)内。只有函数的参数才保存在栈里面,因为每次调用函数都需要逐个数参数(进栈和出栈)

回答2:

堆,向下分配内存(new,malloc等)
-----------------------------------
浮动栈,向上分配内存(函数内部变量,对象的内部成员变量等.一般都有生命周期)
-----------------------------------
基栈.(也叫静态存储区,包括代码段,静态变量,全局变量,const常量等,程序一调入内存至少要占这么多空间)