C++ 简写的 If Else
简写 If...Else(三元运算符)
还有一种简写的 if...else,称为三元运算符,因为它使用了三个操作数。
三元运算符根据条件返回一个值:如果条件为真,返回第一个值;否则,返回第二个值。
它可以用一行代码替换多行代码,并且常用于替换简单的 if...else 语句:
语法
variable = (条件) ? 表达式真 : 表达式假;
与其这样写:
实例
int time = 20;
if (time < 18) {
cout << "日安";
} else {
cout << "晚安";
}
您可以简单地写成:
实例
int time = 20; string result = (time < 18) ? "日安" : "晚安"; cout << result;
您也可以直接在 cout 语句中使用三元运算符:
实例
int time = 20; cout << ((time < 18) ? "Good day." : "Good evening.");
提示:对于简短简单的条件,使用三元运算符。对于较长或更复杂的逻辑,常规的 if...else 语句更易于阅读。
嵌套三元运算
您可以嵌套三元运算符来处理两个以上的结果,但这可能会使代码更难阅读:
实例
int time = 22; string message = (time < 12) ? "Good morning." : (time < 18) ? "Good afternoon." : "Good evening."; cout << message;
注意:尽管嵌套三元运算符可以工作,但为了清晰起见,通常最好使用普通的 if...else if...else 语句。