C+中的堆栈、静态和堆我已经搜索过了,但我还没有很好地理解这三个概念。我什么时候必须使用动态分配(在堆中),它的真正优势是什么?静态和堆栈的问题是什么?我可以在不分配堆变量的情况下编写整个应用程序吗?我听说其他语言都包含了“垃圾收集器”,所以您不必担心内存问题。垃圾收集器是做什么的?你能用这个垃圾收集器自己操作你不能做的内存吗?有一次有人这样对我说:int * asafe=new int;我有一个“指针指向指针”。什么意思?其不同之处在于:asafe=new int;?
3 回答
慕的地8271018
TA贡献1796条经验 获得超4个赞
静态变量(类)
生存期=程序运行时(1) 可见性=由访问修饰符(私有/受保护/公共)确定 静态变量(全局范围)
生存期=程序运行时(1) 可见性=它在(2)中实例化的编译单元。 堆变量
生存期=由您定义(新删除) 可见性=由您定义(无论您将指针分配给什么) 堆栈变量
可见性=从声明到范围退出 生存期=从声明到退出声明范围
- 3 回答
- 0 关注
- 346 浏览
添加回答
举报
0/150
提交
取消