C++,三元运算符,std::cout
如何使用 C++ 用三元运算符编写以下条件
int condition1, condition2, condition3;
int / double result; //int or double
....
std::cout << ( condition1: result1 : "Error" )
<< ( condition2: result2 : "Error" )
<< ( condition3: result3 : "Error")...;
How to write the following condition with a ternary operator using C++
int condition1, condition2, condition3;
int / double result; //int or double
....
std::cout << ( condition1: result1 : "Error" )
<< ( condition2: result2 : "Error" )
<< ( condition3: result3 : "Error")...;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
取决于
result1、result2
等的类型。expressionC ?表达式1 : 表达式2
并非对所有类型的表达式1
和表达式2
都有效。粗略地说,它们必须可以转换为通用类型(可以在标准中阅读确切的规则和例外)。现在,如果result
是字符串,那么您可以这样做:但是,例如,如果结果是整数,则不能这样做。
华泰
Depends on what type is
result1, result2
etc.expressionC ? expression1 : expression2
isn't valid for all types ofexpression1
andexpression2
. They must necessarily be convertible to a common type, roughly speaking (exact rules and exceptions can be read in the standard). Now, ifresult
s are strings, then you do it like this:But if results are integers, for example, you can't do it.
HTH
尝试使用
条件?真值:假值
。Try using
condition ? true-value : false-value
.