1

条件付き if ステートメントでコンパイル エラーが発生する理由を理解しようとしています。これは正しくありませんか?

for(int i=startAt; i>=_itemsList.Count; length < 0 ? i-- : i++;)
{

}
4

2 に答える 2

8

MSDNによると、エラーメッセージの内容の1つである必要があります。

  • 割り当てステートメント

  • メソッドの呼び出し

  • ++iやi++などの接頭辞または接尾辞のインクリメント式

  • --iやi--などのプレフィックスまたはポストフィックスデクリメント式

  • newを使用したオブジェクトの作成

  • 式を待つ

奇妙なコンパイル可能なソリューションの1つは次のとおりです。

i += length < 0 ? -1 : 1
于 2012-11-18T04:41:50.763 に答える
0

最良の答えは zerkms ですが、うまくいくはずの別の解決策があります。

int dummy = 0;
for(int i=startAt; i>=_itemsList.Count; dummy++)
{
  // Do your thing
  length < 0 ? i-- : i++;
}
于 2012-12-18T03:23:53.077 に答える