C ++中变量初始化的区别

这个问题在这里已经有了答案:

  • 我应该什么时候在C ++中使用新的关键字? 11个答案

  • “这两种存储整数的方式有什么区别吗?”

    是的,存在显着差异。

     int X = 100;
    

    使用值100初始化堆栈上的变量X ,while

    int *pX = new int(100);
    

    为堆中的int分配内存,保存在指针pX ,并将该值初始化为100

    对于后者,您应该注意到,有必要在不再需要时释放堆内存:

     delete pX;
    

    第一个是在栈上创建一个变量,而第二个是在堆上创建一个变量并创建一个指向它的指针。

    链接地址: http://www.djcxy.com/p/96535.html

    上一篇: Difference of variable initialization in C++

    下一篇: What is the best way to manage the lifetime of an object variable?