我对 C++ 编程的一些更高级的方面相对较新,而且我在理解是否真的有必要在 C++ 中分配内存时遇到了一些麻烦(无论是通过 malloc、new 等)。例如,在 C 中,我知道您需要分配内存以执行动态大小的数组或其他任务。在 C++ 中,在我看来并非如此,您可以只使用 std::vector、std::string 或其他已通过设计动态调整大小的内置方法。我也明白访问分配的内存比堆栈慢。
因此,考虑到这一点,您是否有时必须在 C++ 中分配内存,如果是,那么其中的一个例子是什么?这当然不包括您的 C++ 代码必须与 C 程序交互的时间。让我们假设程序纯粹用 C++ 编写。
编辑:为了减轻混淆,我知道向量和其他结构正在分配自己的内存,但这是在幕后发生的事情,不需要程序员使用 new、malloc 等,它会自动清理。所以我真正想知道的是,是否有必要在 C++ 中手动执行内存管理