C++ 函数返回 &&& 运算符

C++ Function Return with && Operator

本文关键字:运算符 返回 函数 C++      更新时间:2023-10-16

我正在浏览一个库,我看到了这个函数:

bool CCAPI::IsConnected() const
{
    int state;
    int res = CCAPIGetConnectionStatus(&state);
    return (res == CCAPI_OK) && state;
}

具体来说,最后一行是什么意思?在我看来,它在使用&&运算符时返回了两个变量。这是怎么回事?

它将返回一个bool,就像函数所说的那样。

运算符&&是逻辑AND,因此如果res == CCAPI_OKstate != 0,则它将返回true。在这种情况下,state被隐式地转换为用于&&操作的bool

运算符&&是逻辑AND,也可以写成and

逻辑运算符应用逻辑函数(NOT、AND和inclusiveOR)转换为布尔参数(或在上下文中可转换为布尔的类型),具有布尔结果。

因此,最后一条语句将返回类型为bool的运算结果。