为什么在这里使用“新”运算符? 请简要说明

问题描述

您能否简要解释一下为什么我们在这里使用“ new” 运算符,以及“ new” 运算符在C ++中的作用是什么?

int *p = new int; //Here in this line
*p = 5;

cout << *p << endl;

delete p;

能否请您简单说一下?我真的很困惑。

解决方法

在此特定示例中,没有理由进行动态分配(new提供了动态分配)。

它看起来像一个玩具示例,向您展示动态分配,设置,打印然后删除int

实际上,除非您要创建更复杂的类型,否则您将不会这样做,或者您出于某些原因确实需要int在范围之间共享(尽管,即便如此,如今还是首选智能指针。)

有关动态分配及其在什么时候有用(何时没有用)的更多信息,请参考您的书。

,

如果要在堆中创建此变量,则可以这样做。