“to_string”不是“std”的成员。

3

我用mingw编译这个项目,这个编译器很棒。 以下是我代码的一部分:

#include "astnodecodegenerator.hpp"
#include "utility.hpp"
#include "constants.hpp"
#include <string>
#include <cmath>
#include <sstream>
#include <stack>

. . . .

void AstNodeCodeGenerator::visit(StringConst& str) 
{ 
    emit_la("a0", (std::string("str_const") + std::to_string(stringtable().get_idx(str.token.get_val()))).c_str());
}

void AstNodeCodeGenerator::visit(IntConst& int_const) 
{
    emit_la("a0", (std::string("int_const") + std::to_string(inttable().get_idx(int_const.token.get_val()))).c_str());
}

错误信息如下:

error :'to_string' is not a member of 'std' emit_la<"a0",<std::string(("str_const") + std::to_string(stringtable().get_idx(str.token.get_val()))).c_str());

5
to_string 是 C++11 的一个特性。你可能需要开启这个特性。 - Fred Foo
在命令行中使用“-std=c++11”来启用C++11。 - Cameron
这是Makefile的一部分:----CFLAGS=-g -Wall -Wextra -std=c++11 -Wno-write-strings ../../include/boost - user3341263
你的意思是打开什么? - user3341263
1个回答

1

MinGW的开发人员有没有取得任何进展?他们上一篇关于1571错误的帖子已经因为“过时”而被“关闭”,但是现在已经是2014年12月了,我仍然遇到这个问题!我快被抓狂了!!! - Brian Jack
@BrianJack,现在是2017年,仍然很高兴 :D - Emin Mastizada

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接