【问题标题】:Resurrecting std::auto_ptr in GCC when compiling with -std=c++17使用 -std=c++17 编译时在 GCC 中恢复 std::auto_ptr
【发布时间】:2018-05-12 10:04:08
【问题描述】:

是否有宏或编译器标志可以让我在 GCC 7/8 中继续使用 auto_ptr-std=c++17?我已经很容易找到了clang和MSVC对应的宏,但是我的google-fu还不够好,找不到GCC的解决方案。

我不想使用-fpermissive(它会让我不小心做太多我不应该做的事情),需要更具体的东西。

P。 S. 我没有使用 auto_ptr,但我有一个重要的 3rd-party 库可以使用。

【问题讨论】:

  • 您遇到了什么错误?我只看到 GCC 8.1 的警告。
  • 而且它 specifically documents 没有被删除,它被保留下来是为了向后兼容。
  • @hvd:啊,谢谢。这就是我在尝试之前提出的要求。我在 Mac 上编译,但我宁愿通过针对所有平台的一次提交来解决问题。

标签: c++ gcc c++17 auto-ptr


【解决方案1】:

是的,您可以使用-Wno-deprecated-declarations 进行编译以使 GCC(也适用于 clang)忽略有关已弃用类的警告。

您可能只想将此标志用于您的第三方库,因为它仍然是您控制下的代码的一个很好的警告。

【讨论】:

    猜你喜欢
    • 2019-06-06
    • 2021-10-26
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 2012-01-23
    • 2013-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多