上使用(最近发布的)Cppcheck 1.69时,它显示了很多消息,我期望无。禁用
noExplicitConstructor
证明了所有这些都完全是这种。
但我发现我不是唯一一个有很多新的CPPCHECK消息的人,请看Libreoffice分析的结果(我可以在公开场合展示):
经验丰富的程序员会做什么:
explicit
关键字?1当然,这不是mycode,而是我必须在工作中工作的代码,它是旧代码:在几种(预 - )标准口味中的C和C ++的混合(例如,C ++ 98) ,这是一个很大的代码基础。
explicit
用于
all的构造函数,我不想参与隐式转换,以便编译器可以帮助我捕获错误 - 然后,我尝试始终添加“ //隐式意图”向CTORS评论,我明确打算将其用作隐式转换CTOR。我发现这有助于我编写更正确的代码,而惊喜更少。…所以我会说“是的,去添加
explicit
” - 从长远来看,您会很高兴您做到了 - 这就是我第一次了解它时所做的,我很高兴我做到了。
C ++核心指南状态:
Source:
Https://isocpp.github.io/cppcoreguidelines/cppcoreguidelines#rc-epplitic