gpt4 book ai didi

c++ - 我什么时候必须释放内存?

转载 作者:IT王子 更新时间:2023-10-28 23:35:37 26 4
gpt4 key购买 nike

我学习了 C#,现在我正在学习 C++。释放内存的全部意义对我来说是新的,我想知道什么时候需要担心内存释放,什么时候不需要。

据我了解,我唯一需要担心内存释放的情况是当我使用 new 运算符时,所以我应该使用 delete.
但是在这些情况下不需要释放内存:

  • 类变量(成员)或静态变量。
  • 函数中的局部变量。
  • STL 系列(字符串、列表、 vector 等)。

这是真的吗?
还有其他情况需要我担心内存释放吗?

最佳答案

您基本上是对的:您需要平衡 newdeletenew[]delete[],以及 mallocfree

编写良好的 C++ 几乎不包含这些,因为您将动态内存和生命周期管理的责任留给合适的容器或管理器类,最值得注意的是 std::vectorstd::unique_ptr.

关于c++ - 我什么时候必须释放内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14626318/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com