我们遇到了一些static initialization order fiasco的问题,我正在寻找一种方法来梳理大量代码,以找到可能出现的情况。关于如何有效地完成这项工作,有什么建议吗?
编辑:关于如何解决静态初始化顺序问题,我得到了一些很好的答案,但这不是我的问题。我想知道如何查找存在此问题的对象。在这方面,Evan的答案似乎是到目前为止最好的;我不认为我们可以使用valgrind,但我们可能有内存分析工具可以执行类似的功能。这将仅在给定构建的初始化顺序错误的情况下捕获问题,并且该顺序可能会随每次构建而改变。也许有一个静态分析工具可以捕捉到这一点。我们的平台是运行在AIX上的IBM XLC/C++编译器。
https://stackoverflow.com/questions/335369
复制相似问题