g++ (mingw) 表示,to_string 不是 std 的成员

2024-01-26

我正在制作一个小型词汇记忆程序,其中单词会随机闪现给我以了解含义。正如 Bjarne Stroustroup 告诉我们的那样,我想使用标准 C++ 库,但我一开始就遇到了一个看似奇怪的问题。

我想改变一个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 库清楚地说 http://msdn.microsoft.com/en-us/library/ee404875.aspx它存在并且之前的一个问题 https://stackoverflow.com/questions/7521617/c11-to-string-function-whereStack Overflow(适用于 g++ 版本 4.5)上表示可以使用-std=c++0x旗帜。我究竟做错了什么?


这是 MinGW 下的一个已知错误。相关 Bugzilla http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52015。在评论区你可以得到patch http://tehsausage.com/mingw-to-string使其与 MinGW 一起工作。

此问题已在高于 GCC 4.8.0 的 MinGW-w64 发行版中得到修复,由MinGW-w64项目 http://mingw-w64.org/doku.php。尽管有这个名称,该项目提供了 32 位和 64 位的工具链。这Nuwen MinGW 发行版 http://nuwen.net/mingw.html也解决了这个问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

g++ (mingw) 表示,to_string 不是 std 的成员 的相关文章

随机推荐