bugprone-string-integer-assignment

该检查会找到将整数赋值给 std::basic_string<CharT> (std::string, std::wstring 等) 的情况。问题的根源在于 std::basic_string<CharT> 的以下赋值运算符

basic_string& operator=( CharT ch );

数值类型可以隐式转换为字符类型。

std::string s;
int x = 5965;
s = 6;
s = x;

请使用适当的转换函数或字符字面量。

std::string s;
int x = 5965;
s = '6';
s = std::to_string(x);

为了抑制误报,请使用显式转换。

std::string s;
s = static_cast<char>(6);