我有一个在 Visual Studio 2008 下编译的大型遗留 C++ 项目。我知道有相当数量的“死”代码无法在任何地方访问——未调用的方法,未使用的整个类。
我正在寻找一种可以通过静态分析识别这一点的工具。
这个问题:遗留 C/C++ 项目中的死代码检测建议使用代码覆盖工具。这不是一个选项,因为测试覆盖率不够高。
它还提到了一个-Wunreachable-code。gcc 的选项。我想要 Visual Studio 类似的东西。我们已经使用链接器的 /OPT:REF 选项来删除冗余代码,但这并没有在有用的级别报告死代码(当与 /VERBOSE 一起使用时,有超过 100,000 行,包括来自库的很多行)。
是否有更好的选项可以很好地与 Visual Studio 项目配合使用?