使用 QtCreator + Visual C++ 編譯器編譯項目時,頻繁出現警告:
warning C4819: 該文件包含不能在當前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數據丟失
MSVC 默認按系統代碼頁(中文為 GB2312/CP936)讀取源文件。若文件為 UTF-8 無 BOM,編譯器無法正確識別編碼,導致中文註釋/字符串報警告。
QtCreator 默認保存為 UTF-8 無 BOM。需修改設置使其保存時自動添加 BOM:

重新保存源文件後,重新編譯,C4819 警告消失。BOM 讓 MSVC 正確識別 UTF-8 編碼。