0

我希望有人能指出我哪里出错了?我没有太多使用三元运算符的经验,但我觉得这里有充分的理由使用它,因为它减少了代码长度。

但是,我收到上述错误。谁能看到我哪里出错了?

Colour.R <= 255 ? Colour.R+=10 : Colour.R+=11;

编译器返回

只有赋值、调用、递增、递减和新对象表达式可以用作语句

其中 Color 表示颜色向量。

4

1 回答 1

7

编译器会准确地告诉您出了什么问题——您不能单独使用条件表达式作为语句。这只是一种表达。

幸运的是,在这种情况下,您不需要这样做。你可以写:

Colour.R += Colour.R <= 255 ? 10 : 11;

这也有更清晰的好处:)

(我怀疑你的数字在这里不正确,但那是另一回事。)

于 2013-01-22T20:23:20.853 回答