【发布时间】:2015-05-25 03:24:27
【问题描述】:
我对 C++ 和一般编程非常陌生,目前正在阅读 Bjarne Stroustrup 的编程:使用 C++ 的原则和实践。我一直收到以下错误
严重性代码描述项目文件行错误 C2338
是 已弃用并将被删除。请使用 。你可以 定义 _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS 以确认 您已收到此警告。
我知道头文件 std_lib_facilities.h 使用了某种已弃用的函数,但有没有办法绕过这个?看起来它希望我定义“_SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS”,但我不确定如何做到这一点。任何帮助将不胜感激!
【问题讨论】:
-
你用的是什么编译器?看来您没有使用 GNU C++ 编译器(g++)
-
看起来像 Visual Studio 错误。将
_SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS放入您的预处理器定义中。这应该在项目设置的 c/c++ 部分中。 -
不要使用
<hash_map>和<hash_set>? -
请注意,Stroustrup 提供了此文件的更新版本,该文件通过解决此问题的所述书的新修订版来解决此问题。你可以找到它here
标签: c++ deprecated deprecation-warning