在使用gcc/mingw或clang作为编译器时不会出现,如果把环境换成以MSVC编译就出现此错误.
具体为:
C4819:该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为Unicode格式以防止数据丢失.
C2001:常量中有换行符
问题所在是源代码中的中文字符.
如果在QT Creator里Select Encoding...
经常会出现错误: Error:Could not decode "XXX.cpp" with "XXX"-encoding . Editing not possible.
并且源代码中的中文会变乱码.
解决方法:
用Visual Studio打开出错源代码.
文件->高级保存选项->编码,
把编码由"Uncode (UTF-8 无签名) - 代码页65001"
换成
"Uncode (UTF-8 带签名) - 代码页65001"
确定后保存.
在QT Creator里可以正确显示中文并且不会出错"常量中有换行符"的错误