4

我想将整数转换为字符串。我尝试过这种方式,但这没有用

void foo()
{
    int y = 1;
    string x = static_cast<string>(y);

}
4

3 回答 3

10

std::to_string功能应该这样做:

string x = std::to_string(y);

相反,它是std::stoi

int z = std::stoi(y, nullptr, 10);
于 2013-09-24T18:43:12.960 回答
5

不,这不起作用,因为在任何阶级层次结构中都没有关系intstd::string因此 astatic_cast将失败。

一个简单的方法(虽然不一定是最快的方法)是写

std::stringsteam ss;
ss << y;
std::string x = ss.str();

但是,如果你有一个 C++11 编译器,那么 Joachim Pileborg 的解决方案好得多。

于 2013-09-24T18:42:58.183 回答
1

可以有这个:

  template <typename T>
  string CovertToString ( T Number )
  {
     ostringstream ss;
     ss << Number;
     return ss.str();
  }
于 2013-09-24T18:44:20.890 回答