|
此关键字是内置类型。 此类型的变量可以具有值 true 和 false。 条件表达式不仅具有类型 bool,还具有类型 bool 的值。 例如,i != 0 现在具有 true 或 false,具体取决于 i 的值。
Visual Studio 2017 版本 15.3 及更高版本(在 /std:c++17 和更高版本中可用):后缀或前缀递增或递减运算符的操作数可能不是类型 bool。 换句话说,如果是 bool 类型的变量 b,则不允许使用这些表达式:
C++
b++;
++b;
b--;
--b;
值 true和 false 具有以下关系:
C++
!false == true
!true == false
在下面的语句中:
C++
if (condexpr1) statement1;
如果 condexpr1 为 true,则始终执行 statement1;如果 condexpr1 为 false,则从不执行 statement1。
当后缀或前缀 ++ 运算符应用于类型 bool 的变量时,该变量将设置为 true。
Visual Studio 2017 版本 15.3 及更高版本:已从语言中删除 bool 的 operator++ 且不再提供支持。
后缀或前缀 -- 运算符不能应用于此类型的变量。
bool 类型参与了默认整型提升。 类型 bool 的右值可以转换为类型 int 的右值,同时 false 会变为 0,且 true 会变为 1。 作为截然不同的类型,bool 参与重载决策。
|
|