[英]C++ Function Return with && Operator
我正在瀏覽一個庫,看到了以下功能:
bool CCAPI::IsConnected() const
{
int state;
int res = CCAPIGetConnectionStatus(&state);
return (res == CCAPI_OK) && state;
}
具體來說,這最后一行是什么意思? 在我看來,它正在使用&&
運算符返回兩個變量。 那么這是怎么回事?
它將返回一個bool
,就像函數說的那樣。
運算符&&
是邏輯AND
,因此,如果res == CCAPI_OK
且state != 0
則它將返回true
。 在這種情況下, state
將被&&
操作隱式轉換為bool
。
運算符&&
為邏輯AND ,也可以寫為and
。
邏輯運算符將邏輯函數(NOT,AND和內含OR)應用於布爾參數(或上下文可轉換為bool的類型),並得到布爾結果。
因此,最后一條語句將返回類型為bool
的運算結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.