このコンストラクトを介して C++ bool を Windows API BOOL にキャストしても安全ですか?
bool mybool = true;
BOOL apiboolean = mybool ? TRUE : FALSE;
明らかな問題は見られないので、これはイエスだと思いますが、見た目よりも微妙かもしれないという理由だけで、少し時間をとって質問したかったのです。
私が最初に質問を表現した方法で私の不注意を(穏やかに)指摘してくれたDimaに感謝します.
ということですか
bool b;
...
BOOL apiboolean = b ? TRUE : FALSE;
もしそうなら、はい、これはうまくいきます。
はい、それは機能しますが
bool b;
...
BOOL apiboolean = (BOOL) b;
逆の場合と同様に、同様に機能するはずです。
bool bb = (bool) apiboolean;
Visual Studio 2005 は以下を受け入れます。
bool b = true;
BOOL apiboolean = b;
鋳造は必要ありません。
逆に BOOL->bool が単純にこのように機能しないことに注意してください。