簡體   English   中英

如何將bool轉換為BOOL?

[英]How do I cast a bool to a BOOL?

通過這種結構,我可以安全地將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的另一種方式並不像這樣工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM