禁用标记为已弃用的类/函数/类型

Mingw Disable Classes/Functions/Types Marked Deprecated?

本文关键字:类型 函数 记为      更新时间:2023-10-16

目前我有一个问题,不推荐的消息泛滥我的输出,我想停止它而不禁用所有不推荐的消息。它警告我auto_ptr(我甚至没有在自己的代码中使用)。即使不能使用编译器标志,std库看起来也可以禁用它,尽管我无法找到方法:

#if _GLIBCXX_USE_DEPRECATED
  template<typename> class auto_ptr;
#endif

您可能选择了-std=c++11-std=c++0x语言方言,或者这是您的GCC版本的默认设置。

std::auto_ptr在当前标准中被标记为已弃用,支持来自动态内存管理库的c++11智能指针。

"(我甚至在自己的代码中都不使用)。"

你确定你甚至不包括任何第三方(非标准)的东西,可能会使用std::auto_ptr<> ?

" STD库看起来可以禁用它,尽管我无法找到如何"

只要确保这个标志(_GLIBCXX_USE_DEPRECATED)是未定义的,当编译你的代码:

$ g++ -U_GLIBCXX_USE_DEPRECATED ...