我已经与java一段时间了,我发现checkstyle是非常有用的。我开始使用C++,我想知道是否有一个具有类似功能的样式检查器。我主要是在寻找写定制检查的能力。是否有C++的样式检查器?
回答
Vera++怎么样?
Vera ++是一款用于验证,分析和转换C++源代码的可编程工具。 Vera ++主要是一个引擎,用于解析C++源文件,并以各种集合的形式将解析结果呈现给脚本 - 脚本实际上执行所请求的任务。
点击here可以看到它可以做的更完整的演示。
crc.hpp:157: keyword 'explicit' not followed by a single space
crc.hpp:588: closing curly bracket not in the same line or column
dynamic_property_map.hpp:82: keyword 'if' not followed by a single space
functional.hpp:106: line is longer than 100 characters
multi_index_container.hpp:472: comma should be followed by whitespace
version.hpp:37: too many consecutive empty lines
weak_ptr.hpp:108: keyword 'catch' not followed by a single space
...
这看起来很有希望,我将不得不玩一下。 – Megamug 2010-09-08 14:06:55
我对Artistic Style有很好的反馈,它允许在代码上应用统一的样式,而不会有太多麻烦。
它是免费的,有很多已经定义的“经典”风格。但它可能不适用于C++ 0x新构造。
我也期待Clang图书馆,但我还没有找到任何迄今为止。通常情况下,鉴于Clang的结构,它应该相对容易,但是说起来容易,而不是编码,我想没人花时间。
AStyle更美观,你不能使用它来实际检查样式违规,因为您可以使用checkstyle for Java。 – celavek 2010-09-08 13:30:21
我实际上是在寻找一种风格检查器而不是格式化器。我希望能够为我的团队风格约定创建检查,然后运行检查器以查看是否每个人都遵守约定。 – Megamug 2010-09-08 13:34:03
@megamug:但是如果某件事情已经正确或不正确,那么有一个“检查器”报告有什么意义呢?当你可以简单地在你的makefile中有一个格式化器传递来自动做出正确的,而不需要人为干预? – 2010-09-08 13:52:07
KWStyle似乎是一个轻量级的适合
- 1. Javascript是否有'Instruments'样式采样器?
- 2. jQuery:检查元素是否具有特定样式(非内联)
- 3. 检查是否有任何元素包含某些CSS样式
- 4. Symfony如何检查检查是否被检查没有形式
- 5. 是否有T-SQL的样式检查工具,就像FxCop到.net一样?
- 6. 检查编译器是否为Turbo C++
- 7. 检查lineEdit输入是否有正确的格式Qt 5 C++
- 8. 检查m3u8是否有流c#
- 9. 检查系统是否有声音C#
- 10. 检查JSON和XML是否有效? c#
- 11. 检查流式URL是否有效
- 12. C#如何检查是否
- 13. 检查段落字体样式是否是斜体?
- 14. jquery和创建样式,如何检查样式是否已经存在
- 15. 是否有可能像C#中一样检查Swift中的类型?
- 16. jQuery检查div是否有匹配的文本,然后复制样式
- 17. 父类可以检查子类是否有这样的字段?
- 18. 检查是否有类,并检查是否被点击
- 19. 检查是否有0
- 20. 检查是否有空值
- 21. 检查是否与具有
- 22. 检查是否有两行
- 23. 检查是否有类“paged-”
- 24. 检查是否有列表
- 25. 检查Html.ValidationSummary()是否有值
- 26. 检查cherrypy是否有效
- 27. 检查BitmapData是否有效
- 28. 检查cookie是否使用css样式启用
- 29. 如何检查Selenium IDE中是否应用了样式
- 30. 如何检查样式文件是否已经加载?
会是一个什么风格违规的例子吗?我认为“样式”完全是代码格式,但下面的评论表明这不是你的意思...... – 2010-09-08 13:47:20
这不是我不想将格式化作为它的一部分。我只想知道格式是否正确。另外,我已经用它来实现变量命名约定 – Megamug 2010-09-08 13:54:21
我认为Eclipse CDT插件会做一些你想要的东西 – Falmarri 2010-09-08 17:50:38