c++ - 为什么使用“新”运算符?
问题描述
下面的代码是一个示例,用于演示 C++ 中的一些逻辑
int *p = new int;
*p = 5;
cout << *p << endl;
delete p;
解决方案
在这个特定示例中,没有理由进行动态分配(这是new
提供的)。
它看起来像一个玩具示例,展示了如何动态分配、设置、打印,然后删除int
.
实际上,除非您要创建更复杂的类型,或者出于某种原因确实需要int
在作用域之间共享 (尽管即使那样,现在还是首选智能指针),否则您不会这样做。
请参阅您的书以获取有关动态分配的更多信息以及它何时(和不)有用。