GCC 4.8.1 std::to_string error



我已经能够找到相当多的问题,但似乎都指出,它应该与gcc 4.8.1工作,如果你编译-std=c++11

下面是g++——version的输出:

g++ (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

然而,当我尝试用std::tostring编译一些东西时,即使是像这样的简单命令:

g++ -O0 -g3 -Wall -c -fmessage-length=0 -std=c++11 -o "Main.o" "Main.cpp"

我得到以下错误:

Main.cpp: In function 'int main()':
Main.cpp:6:26: error: 'to_string' is not a member of 'std'
  std::string intString = std::to_string(1335);

即使在像:

这样简单的文件上
#include <string>
#include <cstdio>
int main()
{
    std::string intString = std::to_string(1335);
    printf(intString.c_str());
    return 0;
}

任何想法?

MinGW是GCC在windows上的一个端口。你的问题是一个MinGW问题(正如一些评论已经注意到的)
如果你打算在windows上进行REAL c++开发,我建议你使用MSVC。不,真的,尽管微软很邪恶。
无论如何,这里是Coliru显示它在合法的gcc: away上工作良好。
这就是我将如何做的(如果你使用c++11,不妨使用实际的STL?)

(注意:如果您希望它跨平台,您可以使用clang或适当的构建工具)

相关内容

  • 没有找到相关文章

最新更新