中易网

int a = 10; int *ptr_int = new int(10); 请问这两种方式有什么区别

答案:2  悬赏:80  
解决时间 2021-01-15 02:08
  • 提问者网友:世勋超人
  • 2021-01-14 15:18
int a = 10; int *ptr_int = new int(10); 请问这两种方式有什么区别
最佳答案
  • 二级知识专家网友:鸽屿
  • 2021-01-14 16:39
int a = 10;
a的存储空间在栈中。系统会自动在函数调用时分配,在函数返回时释放。
int *ptr_int = new int(10);
这个int在堆里面。需要你自己来控制什么时候用delete来释放。
全部回答
  • 1楼网友:等灯
  • 2021-01-14 17:16
前者内存在栈上,后者在堆上。前者的作用域在包含其语句的{}中,后者的作用于在全局。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息