相关疑难解决方法(0)

我真的应该大量介绍显式关键字吗?

当我在我的代码1上使用(最近发布的)Cppcheck 1.69时,它显示了很多消息,我没有预料到;-)禁用noExplicitConstructor证明了所有这些消息都属于这种类型.

但是我发现我不是唯一一个有很多新的Cppcheck消息的人,看看LibreOffice的分析结果(我可以公开展示):

在此输入图像描述

有经验的程序员会做什么:

  • 取消支票?
  • 大量介绍explicit关键字?

1 编辑:这当然不是我的代码,而是我必须处理的代码,它是遗留代码:C和C++在几种(预)标准风格中的混合,并且它是一个相当大的代码库.

c++ explicit legacy-code cppcheck

7
推荐指数
1
解决办法
1720
查看次数

Cppcheck 内联抑制不起作用

示例代码:

class Foo {
    // cppcheck-suppress noExplicitConstructor
    Foo(int foo) { }
}
Run Code Online (Sandbox Code Playgroud)

Cppcheck 调用:

$ cppcheck.exe --enable=all foo.cpp
Checking foo.cpp...
[foo.cpp:3]: (style) Class 'Foo' has a constructor with 1 argument that is not explicit.
Run Code Online (Sandbox Code Playgroud)

我怎样才能抑制这个错误?

cppcheck

6
推荐指数
1
解决办法
2310
查看次数

标签 统计

cppcheck ×2

c++ ×1

explicit ×1

legacy-code ×1