|
|
1
19
根据错误消息,三元运算符不能用作语句。你需要这样做才能把它变成作业:
话虽如此,我还是建议用if-then-else。它不那么令人困惑,因为它不涉及“魔法”虚拟变量的创建… |
|
|
2
16
正如其他人指出的,条件运算符不是一个合法的语句表达式。(合法语句表达式包括赋值、调用、增量、递减和构造。) 不过,这里也有一个文体问题。在我看来, 表达式应该对其值有用 和 声明应该对其副作用有用 . 你遇到的问题是你的表达式只对它的副作用有用,这是一个糟糕的代码味道。 你有副作用,所以使用条件语句而不是条件表达式。 |
|
|
3
7
你没有把三元的值结果设置为任何原因。
|
|
|
4
5
三元运算符不是语句。因此,它不能单独在指令中使用-它相当于编写
为了说明这一点,您应该去掉三元运算符并使用if。 |
|
5
4
编译器没有抱怨
有些语言(如javascript)允许您使用条件表达式来分支逻辑,就像您在这里所做的那样,但是c要求您将条件表达式的结果赋给一个变量。一旦您分配了表达式的结果,您就完成了一个完整的语句,编译器很高兴。 |
|
|
6
2
你需要用三元运算符的值来做一些事情…
或者-使用if
|
|
|
7
1
gmcalab和sr pt是对的;三元运算符是用来给你一个结果的,就像
这里(我认为)的混乱之处在于,你把三元运算符当作一个函数来考虑。 |
|
8
1
这个 description 语言引用中的三元运算符表示
虽然语言引用并没有明确说明,但看起来三元组只能在赋值的上下文中使用。你没有对结果做作业。 在我看来,作为if/else的重写会更清楚。 |
|
|
9
0
如果这是不可接受的,为什么你的线路是?只需使用if语句:-)
|
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |