VS 編譯錯誤

weixin_33766168發表於2017-11-08

1 error C2589: “(”: “::”右邊的非法標記 error C2059: 語法錯誤 : “::

摘自:https://www.cnblogs.com/polly333/p/5148537.html

size.Width = (std::max)(size.Width, elementSize.Width);

函式模板max與Visual C++中的全域性的巨集max衝突


2編譯提示:error C4996 : 'GetVersionExW' : 被宣告為已否決

解決辦法:

1、專案 >> 屬性 >> C / C++ >> 常規 >> sdl檢查,選擇“否”

2、專案 >> 屬性 C++ >> 預處理 中加入 _CRT_SECURE_NO_WARNINGS

3、#pragmawarning(disable: 4996)

類似的提示錯誤:

錯誤 C4996 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 


3See documentation on how to use Visual C++ 'Checked Iterators'

解決辦法:

        右鍵專案-->屬性--> 【通用配置】/【c/c++】/ 【前處理器】中第一行 【前處理器定義】中右邊點選編譯 ,在最下方加入_SCL_SECURE_NO_WARNINGS 確定即可;

注意:  新增的是_SCL_SECURE_NO_WARNINGS 去掉提示錯誤-D_SCL_SECURE_NO_WARNINGS前面的-D ;


error C4996: 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>::copy': 

Function call 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'





     本文轉自fengyuzaitu 51CTO部落格,原文連結:http://blog.51cto.com/fengyuzaitu/2071402,如需轉載請自行聯絡原作者

相關文章