在调试中编译时,Visual Studio 2015 Community Edition会出现以下错误,但在发布时进行编译时则不会:
std::copy::_Unchecked_iterators::_Deprecate': Call to 'std::copy' with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators'
Run Code Online (Sandbox Code Playgroud)
我能够将此错误的来源追溯到我用于编写位图图像的第三方库的第214和242行.我不完全了解这些部分发生了什么,所以我宁愿不要搞乱它.
我试图禁用此错误,但Visual Studio不会让我.我已经尝试了文档,StackOverflow或其他地方建议的以下解决方案:
4996到项目设置>配置属性> C/C++>高级中的"禁用特定警告"字段./wd4996到"项目设置">"配置属性">"调试"中的"命令参数"字段.#pragma warning (disable : 4996)到违规文件的顶部,和/或违规功能之上._SCL_SECURE_NO_WARNINGS,_SCL_NONSTDC_NO_WARNINGS,_SCL_OBSOLETE_NO_WARNINGS,_SCL_SECURE_NO_WARNINGS_GLOBAL,和其组合中的项目设置的"预处理定义"字段>配置属性> C/C++>预处理器.#define指令将先前解决方案中的定义添加到违规文件的顶部. …