布尔字面量
来自cppreference.com
表达式
概述 | ||||
值类别(左值 lvalue、右值 rvalue、亡值 xvalue) | ||||
求值顺序(序列点) | ||||
常量表达式 | ||||
潜在求值表达式 | ||||
初等表达式 | ||||
lambda 表达式(C++11) | ||||
字面量 | ||||
整数字面量 | ||||
浮点字面量 | ||||
布尔字面量 | ||||
字符字面量,包含转义序列 | ||||
字符串字面量 | ||||
空指针字面量(C++11) | ||||
用户定义字面量(C++11) | ||||
运算符 | ||||
赋值运算符:
a=b ,a+=b ,a-=b ,a*=b ,a/=b ,a%=b ,a&=b ,a|=b ,a^=b ,a<<=b ,a>>=b
|
||||
自增与自减:++a ,--a ,a++ ,a--
|
||||
算术运算符:
+a ,-a ,a+b ,a-b ,a*b ,a/b ,a%b ,~a ,a&b ,a|b ,a^b ,a<<b ,a>>b
|
||||
逻辑运算符:a||b ,a&&b ,!a
|
||||
比较运算符:a==b ,a!=b ,a<b ,a>b ,a<=b ,a>=b ,a<=>b (C++20)
|
||||
成员访问运算符:a[b] ,*a ,&a ,a->b ,a.b ,a->*b ,a.*b
|
||||
其他运算符:a(...) ,a,b ,a?b:c
|
||||
new 表达式 | ||||
delete 表达式 | ||||
throw 表达式 | ||||
alignof | ||||
sizeof | ||||
sizeof...(C++11) | ||||
typeid | ||||
noexcept(C++11) | ||||
折叠表达式(C++17) | ||||
运算符的代用表示 | ||||
优先级和结合性 | ||||
运算符重载 | ||||
默认比较(C++20) | ||||
类型转换 | ||||
隐式转换 | ||||
一般算术转换 | ||||
const_cast | ||||
static_cast | ||||
reinterpret_cast | ||||
dynamic_cast | ||||
显式转换
(T)a ,
T(a)
|
||||
用户定义转换 |
语法
true
|
(1) | ||||||||
false
|
(2) | ||||||||
解释
布尔字面量是关键词 true
和 false
。它们是 bool 类型的纯右值。
注解
从 bool
到其他类型的隐式转换见整数转换,从其他类型到
bool
的隐式转换见布尔转换。
示例
运行此代码
#include <iostream> int main() { std::cout << std::boolalpha << true << '\n' << false << '\n' << std::noboolalpha << true << '\n' << false << '\n'; }
输出:
true false 1 0