类似于C#的Resharper,有没有用于C++背景代码分析的工具?

4
我知道有许多工具可以提供R#的其他便利功能,但我特别想要一个能在实际构建之前告诉我编译/链接错误的工具。就像在C#中一样,它应该告诉我是否缺少分号、引用了缺失的函数等等。
在R#中,它有一个漂亮的红色/绿色标记位于右下角,告诉您是否存在编译问题。
我看了一下CodeRush,但不清楚它是否适用于c ++。
可能应该提到它是为VS而设计的,虽然对于阅读此内容的人来说,适用于其他工具的建议也会很有用。

1
在C++中,如果没有实际半编译(例如,某些内容依赖于内部内存布局),基本上无法确定某些东西是否编译。因此,您要寻找的是一种使用编译器(库)作为其后端的工具。 - PlasmaHH
2个回答

3
你使用的是哪个版本的Visual Studio? Visual Studio 2010及以上版本应该能够检查语法错误、未定义标识符等问题。最近的Eclipse版本也可以做到这一点。 (事实上,Eclipse的代码分析会检查一些潜在的问题,比如未初始化的成员变量,而我的编译器则不会。)由于Eclipse是一个完整的IDE,它不会与Visual Studio集成,但你可以创建一个包含相同文件的Eclipse项目,并使用Eclipse进行编辑,使用另一个IDE进行构建和调试。(我使用这种方法将Eclipse与Embarcadero C++Builder一起使用,因为我更喜欢Eclipse作为IDE。)更新:Visual C ++显然将其称为IntelliSense错误报告,你可以在“工具”、“选项”、“文本编辑器”、“C / C ++”、“高级”、“IntelliSense”下启用它。此博客文章提供了更多信息。

我在使用2010版本。我没有看到它做任何类似的事情。也许有些配置需要调整? - Carlos
1
@Carlos - 请检查工具、选项、文本编辑器、C/C++、高级、智能感知;我已经相应地更新了我的答案。 - Josh Kelley

0

看看Visual Assist X。它不像Resharper那样先进,只是增强了IntelliSense,但可以让你的C++编写变得更容易一些。


我没有看到它告诉我有关编译错误的信息。我需要更改哪个选项吗? - Carlos
据我所知,不会。正如PlasmaHH所说,必须编译C++才能发现编译错误。就我使用的情况而言,Visual Assist X并没有这样做。 - Aleksandar Stojadinovic

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接