cppcheck 中的 SLOC
Posted
技术标签:
【中文标题】cppcheck 中的 SLOC【英文标题】:SLOC in cppcheck 【发布时间】:2015-11-16 16:59:24 【问题描述】:我想编写可以添加到 CppCheck 中其他检查器的检查器。该检查器必须检查所有成员函数的 SLOC,例如该函数应包含不超过 200 行的重要代码。但在 CppCheck 中,我只找到了检查主体 hasBody()
是否存在的方法,而不是行数。
【问题讨论】:
你的问题是? @user1034749 如何计算函数代码中的行数。 【参考方案1】:我是一名 cppcheck 开发人员。我不是这个话题的专家。我认为这完全取决于您要计算的内容。这是多少行:
void f() int x=3; int y=x+2; dostuff(x+y+4);
我猜你想遍历标记并计算分号或其他东西:
for (tok = functionScope->classStart; tok != functionScope->classEnd; tok = tok->next())
if (tok->str() == ";")
++lines;
我认为您建议的这个检查器很有趣,但它不适合核心 cppcheck 工具。我建议你写一个插件。我很乐意将它添加到我们的插件文件夹中并在 GUI 等中显示它。
顺便说一句.. 我认为在 GUI 中集成(执行和读取结果)ohcount、cccc 或其他任何东西会很好,这样可以显示扩展的统计信息。
【讨论】:
以上是关于cppcheck 中的 SLOC的主要内容,如果未能解决你的问题,请参考以下文章
有人可以澄清 Mac OSX 安装中 cppcheck 中的 Homebrew 是啥吗
如何解决 Cppcheck 中的问题 ID“toomanyconfigs”和“missingInclude:”
从 cmake 生成的命令中取消设置 cppcheck 分析中的定义