我正在为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")};
删除警告。但是,我不了解发生什么情况以及第一个解决方案的“坏处”。也许有人可以向我解释?或给我一些提示!
答案 0 :(得分:16)
建议您对 braced-init-list
使用初始化,例如:const std::string OffOn[]{"off", "on"};
,因此=
不必要。