g_s(mingw)说to_string不是std的成员

g_s(mingw)说to_string不是std的成员

我正在制作一个小词汇记忆程序,其中的单词将随机闪现在我的意思中。我想使用标准的C ++库,就像Bjarne Stroustroup告诉我们的那样,但我遇到了一个看似奇怪的问题。

我想将long整数更改std::string为能够将其存储在文件中。我也受雇于to_string()此。问题是,当我使用g ++(版本4.7.0,如其--version标志中所述)编译它时,它说:

PS C:\Users\Anurag\SkyDrive\College\Programs> g++ -std=c++0x ttd.cpp
ttd.cpp: In function 'int main()':ttd.cpp:11:2: error: 'to_string' is not a member of 'std'

我的程序给出了这个错误:

#include <string>int main(){
    std::to_string(0);
    return 0;}

但是,我知道它不可能是因为msdn库清楚地说它存在并且早先关于Stack Overflow的问题(对于g ++版本4.5)说它可以用-std=c++0x旗标打开。我究竟做错了什么?


慕斯王
浏览 502回答 3
3回答

MMMHUHU

#include&nbsp;<string>#include&nbsp;<sstream>namespace&nbsp;patch{ &nbsp;&nbsp;&nbsp;&nbsp;template&nbsp;<&nbsp;typename&nbsp;T&nbsp;>&nbsp;std::string&nbsp;to_string(&nbsp;const&nbsp;T&&nbsp;n&nbsp;) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::ostringstream&nbsp;stm&nbsp;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stm&nbsp;<<&nbsp;n&nbsp;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;stm.str()&nbsp;; &nbsp;&nbsp;&nbsp;&nbsp;}}#include&nbsp;<iostream>int&nbsp;main(){ &nbsp;&nbsp;&nbsp;&nbsp;std::cout&nbsp;<<&nbsp;patch::to_string(1234)&nbsp;<<&nbsp;'\n'&nbsp;<<&nbsp;patch::to_string(1234.56)&nbsp;<<&nbsp;'\n'&nbsp;;}别忘了包括&nbsp;#include <sstream>
打开App,查看更多内容
随时随地看视频慕课网APP