我有一些位于c ++析构函数中的代码,但是我希望它在由于应用程序退出而不是常规破坏而被破坏的情况下,做一些不同于正常的事情。
有没有办法做到这一点?
更多信息:我有一个记录器对象,如果已经被破坏,将无法进行记录,尽管在另一个对象的析构器中,它会进行记录调用。我认为如果受到破坏,我可以跳过日志调用或根据需要重新打开记录器。这个问题基于无法控制销毁顺序。如果记录器最后被破坏,我将不会遇到这个问题。
更多信息2:此应用程序实际上是一个应用程序,而更多是一个dll加载到另一个应用程序中。虽然最佳解决方案可以与exe和dll一起使用。