首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

堆储存还是全局变量存储

2013-03-22 
堆存储还是全局变量存储?int *p1 new int(0)我们知道new运算符代表向堆申请一块存储空间,那么new int(0

堆存储还是全局变量存储?
       int *p1 = new int(0);我们知道new运算符代表向堆申请一块存储空间,那么new int(0)是存储在堆里。但是p1这个指针是个全局变量,那么p1是存储在哪里?是全局变量区吗?
       int a = new int(0);这里的a是个引用吧,那么存储在哪里? 堆 全局变量区 存储
[解决办法]
指针和其指向的对象不是一回事;
int a = new int(0); 错误的写法,new返回的是一个int空间的地址(指针),不能转化为int类型
[解决办法]
1、全局变量存放在静态区,new出来的在堆里,局部变量在栈里
2、int a = new int(0);是笔误吗?应该是 int *a = new int(0);

热点排行