bool (C++)
此关键字是内置类型。 此类型的变量可以具有值 true
和 false
。 条件表达式不仅具有类型 bool
,还具有类型 bool
的值。 例如,i != 0
现在具有 true
或 false
,具体取决于 i
的值。
Visual Studio 2017 版本 15.3 及更高版本(在 /std:c++17 和更高版本中可用):后缀或前缀递增或递减运算符的操作数可能不是类型 bool
。 换句话说,如果是 bool
类型的变量 b
,则不允许使用这些表达式:
b++;
++b;
b--;
--b;
值 true
和 false
具有以下关系:
!false == true
!true == false
在下面的语句中:
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
参与重载决策。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈