0

誰かが私が間違っているところを指摘できることを望んでいましたか? 三項演算子を使用した経験はあまりありませんが、コードの長さを短縮するため、ここで使用する十分な理由があると感じています。

ただし、上記のエラーが発生します。誰が私が間違っているのかを見ることができますか?

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

コンパイラは戻ります

代入、呼び出し、インクリメント、デクリメント、および新しいオブジェクト式のみをステートメントとして使用できます

ここで、Color は Color ベクトルを表します。

4

1 に答える 1

7

コンパイラは、何が問題なのかを正確に伝えています。条件式を単独でステートメントとして使用することはできません。あくまでも表現です。

幸いなことに、この場合、その必要はありません。あなたは書ける:

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

それには、より明確であるという利点もあります:)

(ここであなたの数字は間違っていると思いますが、それは別の問題です。)

于 2013-01-22T20:23:20.853 に答える