在MFC程序中混用BOOL和bool,編譯時產生警告信息
warning C4800: “BOOL”: 將值強制為布爾值“true”或“false”(性能警告)
查看了對應的匯編文件,用的都是mov、cmp、setne這些不太耗時的指令。有些告警信息不用太在意。
bool a = false; 00C72F33 mov byte ptr [a],0 BOOL b = a; 00C72F37 movzx eax,byte ptr [a] 00C72F3B mov dword ptr [b],eax bool c = b; 00C72F3E cmp dword ptr [b],0 00C72F42 setne al 00C72F45 mov byte ptr [c],al