Difference of variable initialization in C++
本问题已经有最佳答案,请猛点这里访问。
这两种存储整数的方法有什么区别吗?
1 | int X = 100; |
和
1 | int *pX = new int(100); |
"Is there any difference between these 2 ways of storing an integer?"
是的,存在显着差异。
1 int X = 100;
使用值
1 int *pX = new int(100);
为堆上的
对于后者,您应该注意到,当不再需要堆内存时,必须释放它:
1 | delete pX; |
第一个是在堆栈上创建变量,而第二个是在堆上创建变量并创建指向它的指针。