在MinGW中启用字符串转换功能

时间:2013-12-22 03:00:06

标签: string c++11 g++ mingw

此代码:

#include <iostream>
#include <string>

int main()
{
    std::string s = "52123210";
    int derp = std::stoi(s, 0, 10);
    std::to_string(derp); 
    return 0;
}

出现此错误:

test.cpp:10:2:错误:'stoi'不是'std'的成员

test.cpp:11:2:错误:'to_string'不是'std'的成员

尝试了这个:

http://tehsausage.com/mingw-to-string (不工作)

将我的MingW从4.6.1更新到4.8.1 (不工作)

可能的错误: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37522 (除了我所知的应用任何东西,我不敢触及编译器的代码)

**也不能使用“using namespace std”但生成的'stoi'和'to_string'未声明 而错误。

1 个答案:

答案 0 :(得分:0)

这是Windows上vswprintf的非标准声明的结果。 GNU标准库在此平台上定义_GLIBCXX_HAVE_BROKEN_VSWPRINTF,这反过来会禁用您尝试使用的转换函数。

https://stackoverflow.com/a/8543540/2684539建议进行黑客攻击/解决。