我想将整数转换为字符串。我尝试过这种方式,但这没有用
void foo()
{
int y = 1;
string x = static_cast<string>(y);
}
该std::to_string
功能应该这样做:
string x = std::to_string(y);
相反,它是std::stoi
:
int z = std::stoi(y, nullptr, 10);
不,这不起作用,因为在任何阶级层次结构中都没有关系int
。std::string
因此 astatic_cast
将失败。
一个简单的方法(虽然不一定是最快的方法)是写
std::stringsteam ss;
ss << y;
std::string x = ss.str();
但是,如果你有一个 C++11 编译器,那么 Joachim Pileborg 的解决方案要好得多。
可以有这个:
template <typename T>
string CovertToString ( T Number )
{
ostringstream ss;
ss << Number;
return ss.str();
}