什么是从int | double到string的转换的简洁C ++习语?


what's concise C++ idiom for conversion from int|double to string?

本问题已经有最佳答案,请猛点这里访问。

查看相关的Q&A的,似乎最好的C++转换为字符串的做法

1
2
3
ostringstream stringStream;
stringStream << input_value;        // let's say, input_value is a double
output_string = stringStream.str();

有没有办法在不超过三行的C++中实现同样的方法?


使用std::to_string家庭功能:

1
std::string s = std::to_string(3.1416);

如果你不需要的C + +有一个选项boost::lexical_cast11。

1
std::string s = boost::lexical_cast<std::string>(3.1416);

是的,有一个_性病::字符串:

1
output_string = std::to_string(input_value);

(for C++ 03,外观为boost::lexical_cast)。


如果你没有C + + 11,你可以使用什么样的:

1
boost::lexical_cast<std::string>(input_value);

(这是很容易写一个你自己的_字符串如果你don’t想要提升虽然你真的只是你的现有代码缠绕在一个函数)。

如果你有一个C + + 11,棒与std::to_string杰西善&;juanchopanza已经提到。


这是一个在C + +:班轮11

1
std::string s1 = std::to_string(42);

1
std::string s2 = std::to_string(42.0);