我正在努力警告cppcheck(Linux机器上的版本1.85)正在报告:
someFile.h:23:29:警告:冗余代码:找到一个以字符串常量开头的语句.[constStatement]
const std :: string OffOn [] = {"off","on"};
^
我做了一些研究,发现将声明改为
const std::string OffOn[]= {std::string("off"), std::string("on")};
Run Code Online (Sandbox Code Playgroud)
删除警告.但是我不明白发生了什么,以及我的第一个解决方案有什么"坏".也许有人可以向我解释一下?或者给我一些提示!
Den*_*kov 17
它建议你使用braced-init-list类似的初始化:const std::string OffOn[]{"off", "on"};,所以这=是不必要的.