问题描述
您能否简要解释一下为什么我们在这里使用“ new” 运算符,以及“ new” 运算符在C ++中的作用是什么?
int *p = new int; //Here in this line
*p = 5;
cout << *p << endl;
delete p;
能否请您简单说一下?我真的很困惑。
解决方法
在此特定示例中,没有理由进行动态分配(new
提供了动态分配)。
它看起来像一个玩具示例,向您展示将动态分配,设置,打印然后删除int
。
实际上,除非您要创建更复杂的类型,否则您将不会这样做,或者您出于某些原因确实需要int
在范围之间共享(尽管,即便如此,如今还是首选智能指针。)
有关动态分配及其在什么时候有用(何时没有用)的更多信息,请参考您的书。
,如果要在堆中创建此变量,则可以这样做。