Visual Studio 编译器警告(级别 3)C4996
跳到导航
跳到搜索
你的代码使用标记为“已弃用”的函数、类成员、变量或 typedef。 符号是使用 __declspec(deprecated)
修饰符或 C++14 deprecated
属性弃用的。 实际的 C4996 警告消息由声明的 deprecated 修饰符或属性指定。
注解
Visual Studio 库中的许多函数、成员函数、函数模板和全局变量已弃用。 某些函数/变量(例如 POSIX 和 Microsoft 特定的函数)被弃用的原因是它们现在使用不同的偏好名称。 某些 C 运行时库函数被弃用的原因是它们不安全,而现在具有更安全的变体。 其他函数/变量被弃用的原因是它们已过时。 弃用消息通常包括已弃用函数或全局变量的建议替换项。
/sdl
(启用附加安全检查)编译器选项会将此警告升级为错误。
关闭警告
若要解决 C4996 问题,我们通常建议更改代码。 请改用建议的函数和全局变量。 如果出于可移植性原因而需要使用现有的函数或变量,可以关闭警告。
关闭针对特定代码行的警告
若要关闭针对特定代码行的警告,请使用 warning pragma #pragma warning(suppress : 4996)
。
在文件中关闭警告
若要在文件中针对随后的所有内容关闭警告,请使用警告 pragma #pragma warning(disable : 4996)
。
在命令行生成中关闭警告
若要在命令行生成中全局关闭警告,请使用 /wd4996
命令行选项。
在 Visual Studio 中关闭针对项目的警告
若要关闭 Visual Studio IDE 中整个项目的警告,请执行以下操作:
- 打开项目的“属性页”对话框。 有关如何使用“属性页”对话框的信息,请参阅属性页。
- 选择“配置属性”>“C/C++”>“高级”属性页。
- 编辑“禁用特定警告”属性以添加 4996。 选择“确定”以应用更改。