重载从 int 到 std::string 的转换运算符

Overloading conversion operator from int to std::string

是否可以重载从 int 到 std::string 的转换运算符?是否可以使用此功能:

void printToLog(std::string text);

像这样:

int a = 5;
printToLog(a);

或者这样:

int a = 5;
printToLog(a + " bombs have been planted.");

?

标准库中有一个函数。恰当地命名为 std::to_string:

int a = 5;
printToLog(std::to_string(a) + " bombs have been planted.");

您不能为此添加转换运算符。这样的运算符只能是class类型的成员,int不是class类型的成员。您也不能将转换构造函数添加到 std::string。使用标准为您提供的机制。