かなり有名なお話なのですが、 Win32API の BOOL 型は FALSE 以外は不定となっています。 if 文などで比較する場合には必ず FALSE と比較するようにします。
たとえば…
BOOL result = SomeAPI(); if (result != FALSE) { // result が真の時 } else { // result が偽の時 }
…もしくは…
if (SomeAPI()) { // result が真の時 } else { // result が偽の時 }
…です。
ネットを調べると同じようなことを言っているサイトがたくさん見つかります。
Contributions