小编Ete*_*ind的帖子

在 C++ 中使用 aa 方法而不是类自己的析构函数进行清理有什么理由吗?

最近我在关注rastertek上的教程,发现他们建议使用一种Shutdown()清理方法而不是类自己的析构函数。他们提到的原因是,在调用一些不安全的函数(如 )时,不能保证析构函数被执行ExitThread()

但是,我怀疑当析构函数无法调用时该方法是否会被执行。事实上,你总是可以Shutdown()在调用之前调用ExitThread(),但为什么析构函数不一样呢?如果我可以在调用之前做一些事情ExitThread(),我当然也可以调用析构函数。

将清理代码放在析构函数中是否比使用其他方法来完成此任务更安全?我知道释放一些重要资源(例如关闭文件)可能需要这种单独的方法来完成任务。但是除此之外还有其他原因吗,因为教程中似乎不是这种情况?

作为记录,我知道那里有类似的问题。但那人没有得到任何答复。

c++ destructor

5
推荐指数
1
解决办法
452
查看次数

如何保证在进程退出或在c ++中被杀死时执行某些代码?

谁能告诉我如何确保我的程序中的某些代码在其进程退出或被杀死时被执行?

驱逐舰只有在正常退出时才会被召唤.但我希望我的代码在被系统关闭或任务管理器杀死时执行.

该平台是Windows,如果需要,我不介意使用特定于平台的代码.

c++ windows process

1
推荐指数
1
解决办法
194
查看次数

标签 统计

c++ ×2

destructor ×1

process ×1

windows ×1