【问题标题】:Will installing GCC 7.1 include std::is_base_of_v in the standard library?安装 GCC 7.1 会在标准库中包含 std::is_base_of_v 吗?
【发布时间】:2017-11-20 21:48:09
【问题描述】:

我在 Ubuntu 16 机器上安装了 GCC 5 软件包,我想编译一些代码,这些代码使用较新的 std::is_base_of_v 和其他类似的“使用”别名,这些别名在标准库中调用C++17 标准。 GCC 很大,我以前从未安装过编译器,所以在开始之前我想知道标准库是否也会升级。我还想确保 clang 编译工作。任何建议表示赞赏。

【问题讨论】:

  • 是什么让你如此怀疑?
  • 无需升级编译器。只需尝试使用 -std=c++1z 编译您的测试程序
  • 何不试试Wandbox
  • @erenon 只是添加 -std=c++1z 会导致错误:“is_base_of_v”不是“std”的成员

标签: c++ gcc c++17


【解决方案1】:

这是 GCC 标准库状态页面: https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.201z

您要查找的符号是由P0006R0 介绍的。上面的状态页面显示,它是在 GCC 7 中实现的。你需要那个版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-26
    • 2020-12-12
    • 2018-03-30
    • 2017-11-26
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多