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