2.2.9 条件表达式
2025年2月21日小于 1 分钟
C++ 中的条件表达式又叫做三目运算、三元表达式等,其形式是
逻辑或表达式
逻辑或表达式 ? 表达式 : 赋值表达式
标点符号 ?
和 :
是条件表达式的标志,为了方便表述,这里将 ?
左边的表达式称为 操作数1,将 :
左边、?
右边的表达式称为 操作数2,将 :
右边的表达式称为 操作数3。
条件表达式的计算是先计算操作数1,如果操作数1转换到bool
后的值true
,则计算操作数2,否则计算操作数3(类似于逻辑表达式的短路行为,另一个操作数不会计算)。
整个表达式的值是操作数2或操作数3的值,取决于计算了哪一个操作数。