gpt4 book ai didi

c++ - 函数 C++ 中的静态指针变量

转载 作者:行者123 更新时间:2023-11-30 01:13:18 25 4
gpt4 key购买 nike

如果我执行这段代码,它会产生内存泄漏吗?如果不是内存泄露,内存什么时候被删除?

class MyClass 
{
public:
void foo() {
static MyClass *element = new MyClass();
}
};

最佳答案

好吧,两者兼而有之。

是的;没有删除它的代码(关联的 delete 元素)。

没有;它只会有一个实例,并且操作系统无论如何都会在进程退出时回收内存。内存使用量不会无限制地增长。

考虑到 future 可能的维护和变更;我倾向于使用 std::unique_ptr 并避免任何 future 内存泄漏的风险。

关于c++ - 函数 C++ 中的静态指针变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32504189/

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