CRT弃用警告

时间:2013-04-26 10:32:05

标签: c++ visual-studio visual-c++ deprecated crt

根据Security Enhancements in the CRTSecure Template Overloads,可以使用_CRT_SECURE_NO_WARNINGS禁用与因安全问题而弃用的功能相关的警告。也可以使用_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES用更安全的对应物替换某些功能。但是,是否有人知道两者是否可以同时使用。也就是说,如果我首先指定_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES然后_CRT_SECURE_NO_WARNINGS,那么可以替换那些可以替换的函数,并且对于其余情况,将禁止警告。我不确定如何测试这个,因为如果我添加两个,所有警告都会被有效地抑制,但我不知道是否仅仅是由于第二个标志。

1 个答案:

答案 0 :(得分:2)

是的,您可以同时使用它们,它们正在完全按照您的预期进行操作。

您可以查看crtdefs.h标头文件。如果您定义_CRT_SECURE_NO_WARNINGS,它就不会生成警告来代替_CRT_INSECURE_DEPRECATE引用。

_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES控制其他宏,例如__DEFINE_CPP_OVERLOAD_STANDARD_FUNC_ ...等。