首页 > 解决方案 > 为什么将三元运算符与 std::cout 一起使用时,会打印 conidtion 而不是结果?

问题描述

当我写

std::cout << 5 ? 'a' : 'b';

输出是 5?为什么我要把整个表达式放在括号中?三元运算符作为一个整体不是一个表达式,应该先评估然后输出结果吗?如果 std::cout 考虑我想打印条件,条件之后的部分会发生什么?为什么会被忽略?

标签: c++coutconditional-operator

解决方案


推荐阅读