编译错误:“stoi”不是“std”的成员

新手上路,请多包涵

我的代码:

 #include <iostream>
#include <string>

int main()
{
    std::string test = "45";
    int myint = std::stoi(test);
    std::cout << myint << '\n';
}

给我编译错误:

 error: 'stoi' is not a member of 'std'
     int myint = std::stoi(test);
                 ^

但是,根据 这里,这段代码应该编译得很好。我在我的 CMakeLists.txt 文件中使用 set(CMAKE_CXX_FLAGS "-std=c++11 -O3") 行。

为什么不编译?


更新:我正在使用 gcc 并运行 gcc --version 打印出:

 gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010

原文由 Karnivaurus 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2k
1 个回答

Cmake 使用“设置(CMAKE_CXX_STANDARD 11)”

原文由 xp chen 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏