gpt4 book ai didi

c++ - 显式销毁非指针静态对象

转载 作者:行者123 更新时间:2023-11-30 03:06:58 26 4
gpt4 key购买 nike

我正在使用 Autodesk Maya api 和 MLibrary::cleanup 函数“...防止执行任何静态析构函数。” source

使用 Maya api 的代码还使用了我的一些 dll,其中包含需要销毁的非指针静态变量(具体来说,包含 static Log stdLog 的 Log 类,需要写入页脚并关闭文件流)。

处理此问题的适当方法是什么?我添加了一个调用 stdLog.~Log();Log::destroy() 函数,这样安全吗?

最佳答案

也许安全,也许不安全。最好结构化代码,这样它就无关紧要了。不是让 destroy 调用 ~Log ,而是让 ~Log 调用 destroy。还有 destroy 检查对象是否已经被销毁;如果必须,添加一个 bool 变量来跟踪它。

关于c++ - 显式销毁非指针静态对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6129921/

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