即使在使用-std = c ++ 11 flag同时使用g ++和clang ++时,stoi也未声明

时间:2015-07-02 18:44:10

标签: c++ c++11 compilation compiler-errors

我有一个非常简单的main.cpp文件:

#include <iostream>
#include <string>
using namespace std;
int main() {
    string s = "194";
    int i = stoi(s);
    cout << i << endl;
}

在命令行clang++ main.cpp -std=c++11输出:

main.cpp:6:10: error: use of undeclared identifier 'stoi'
        int i = stoi(s);
                ^
1 error generated.

clang++ --version输出:

clang version 3.6.1 (tags/RELEASE_361/final)
Target: i686-pc-windows-gnu
Thread model: posix

通过GCC,g++ main.cpp -std=c++11输出:

main.cpp: In function 'int main()':
main.cpp:6:16: error: 'stoi' was not declared in this scope
  int i = stoi(s);
                ^

g++ --version输出:

g++ (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.

我已尝试查找类似问题的答案,但似乎没有一种解决方案可行。

可能是什么问题?

0 个答案:

没有答案