为什么使用“new”运算符?

Nai*_*ava 0 c++ pointers new-operator

下面的代码是一个示例,用于演示 C++ 中的一些逻辑

int *p = new int;
*p = 5;

cout << *p << endl;

delete p;
Run Code Online (Sandbox Code Playgroud)

Ast*_*ngs 5

在这个特定的例子中,没有理由进行动态分配(这是new提供的)。

它看起来像一个玩具例子来告诉你如何将动态分配,集打印,然后删除int。

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

有关动态分配的更多信息以及它何时(以及何时)有用,请参阅您的书。