Ответ 1
Рекомендуется использовать инициализацию со braced-init-list
const std::string OffOn[]{"off", "on"};
например: const std::string OffOn[]{"off", "on"};
так =
просто не нужно.
Я борюсь с предупреждением, что cppcheck
(версия 1.85 на машине с Linux) сообщает:
someFile.h: 23: 29: предупреждение: избыточный код: найден оператор, который начинается со строковой константы. [ConstStatement]
const std :: string OffOn [] = {"off", "on"};
^
Я провел некоторое исследование и обнаружил, что изменение утверждения на
const std::string OffOn[]= {std::string("off"), std::string("on")};
удаляет предупреждение Однако я не понимаю, что происходит, и что "плохого" в моем первом решении. Может быть, кто-то может мне это объяснить? Или дай мне несколько советов!
Рекомендуется использовать инициализацию со braced-init-list
const std::string OffOn[]{"off", "on"};
например: const std::string OffOn[]{"off", "on"};
так =
просто не нужно.