我无法编译以下代码
auto test = 42.02;
double right = std::stod(stck.top());
我正在使用Code :: Blocks并激活构建选项以遵循c ++ 11标准。当我将下面的行放在注释中时,编译器不会抱怨自动声明和编译。
我包含了字符串标题。我没有使用命名空间。
我不知道为什么这不编译。请帮我! 编辑: 我的编译器是标准MinGW GCC 4.9
为简单起见,我尝试了以下方法:使用-std = c ++ 11编译
#include <string>
int main(){
double pi = std::stod("3.14");
return 0;
}
我收到以下错误:
错误:stod不是标准的成员。
答案 0 :(得分:1)
std::stod
仅在您至少使用std=c++11
进行编译时才可用。因此,在编译时,只需添加标记-std=c++11
,您就可以使用stod
答案 1 :(得分:0)