【发布时间】:2013-07-19 10:01:38
【问题描述】:
这是一个我发现我真的不知道答案的问题。假设我们有以下代码:
int grade = 100;
string finalgrade = (grade > 90) ? "High Pass"
: (grade > 75) ? "Pass"
: (grade >= 60) ? "low pass" : "fail";
如果条件运算符保持关联,将如何评估它?
【问题讨论】:
-
基本上,您将拥有 PHP。哈哈哈,我真希望我是在开玩笑。见phpsadness.com/sad/30
-
如果语言规则发生变化,询问会发生什么是没有意义的。改变它的人会写下新法律中发生的事情,我们会阅读、学习和应用它。然而,我们将继续做的一件事是避免像您发布的那样复杂的表达方式。
-
@DanielDaranas 问会发生什么是有道理的。想象一下,如果 PHP 语言作者思考一下会产生什么影响。
-
只是一点点,但是
...?...:...?...:...的序列正好对应if ... else if ... else if ....的情况,并且应该以相同的方式格式化,没有第二个,第三个等的额外缩进。在这种情况下,我会在每个?之前添加一个新行,并且缩进都一样,但其他解决方案也是可行的,只要它们在每次添加?时不继续缩进即可。 -
@DanielDaranas 可以说是对的,但有时它可以帮助理解为什么当前的规则是“这样”而不是“那样”,并且有一种基本原理可以帮助记住规则! :)