【问题标题】:Cannot use <any> library in c++无法在 C++ 中使用 <any> 库
【发布时间】:2020-06-16 05:07:49
【问题描述】:

说明

我是 C++ 新手。我的项目需要使用任何库,这是 c++ 17 之后的一个新功能。在更新我的编译器之后,遵循this 链接。我仍然遇到错误。这是错误消息和我的测试代码。

g++ 版本:

g++ (Ubuntu 6.5.0-2ubuntu1~16.04) 6.5.0 20181026
版权所有 (C) 2017 Free Software Foundation, Inc.
这是免费软件;查看复制条件的来源。没有
保修单;甚至不是为了适销性或特定用途的适用性。

代码

// test_c++17.cc
#include <any>
#include <iostream>

int main() {
  std::cout << "hello c++ 17" << std::endl;
}

编译

gcc -std=c++17 test_c++17.cc -o test

错误信息

【问题讨论】:

标签: c++ c++17 stdany


【解决方案1】:

根据 cppreference 的 C++ compiler support 页面,直到 GCC 7 才支持 std::any。您需要再次升级到更新的版本。目前 9.2 是当前最稳定的版本。

【讨论】:

  • libstdc++ 的status page 也是这么说的。
  • 问题已解决。将 g++ 更新到较新版本后,即可编译代码。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-14
  • 2016-02-23
  • 2013-04-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多