C# C-只能将赋值调用递增递减等待和新对象表达式用作语句
我在使用代码时遇到以下错误: 只有赋值调用递增递减等待和新对象表达式可以用作语句 当我使用此代码时,我会得到:C# C-只能将赋值调用递增递减等待和新对象表达式用作语句,c#,C#,我在使用代码时遇到以下错误: 只有赋值调用递增递减等待和新对象表达式可以用作语句 当我使用此代码时,我会得到: for (int i = enemies.Count - 1; i >= 0; i-) { enemies[i].Update(gameTime); if (enemies[i].Active == false) { enemies.RemoveAt(i); } } for (int i = enemies.Count - 1; i >= 0; i--)
for (int i = enemies.Count - 1; i >= 0; i-)
{
enemies[i].Update(gameTime);
if (enemies[i].Active == false)
{
enemies.RemoveAt(i);
}
}
for (int i = enemies.Count - 1; i >= 0; i--)
PS:我在I-第一行上得到错误:I>=0;I-使用I-进行减量。使用两个减号。
这相当于i-=1;或i=i-1;是表达式推进了迭代这可能是类级别的问题,但更可能的是您没有正确地递减i 应改为:
for (int i = enemies.Count -1; i >= 0; i--) { // etc... }
您只是使用了i-这是不正确的。您的问题在于for语句,您只有i-而不是i-
由于i-不是一个操作,因此它被视为一条语句。您的错误位于此行:
for (int i = enemies.Count - 1; i >= 0; i-)
您需要使用以下代码:
for (int i = enemies.Count - 1; i >= 0; i-)
{
enemies[i].Update(gameTime);
if (enemies[i].Active == false)
{
enemies.RemoveAt(i);
}
}
for (int i = enemies.Count - 1; i >= 0; i--)
你可能是说我-
for (int i = enemies.Count - 1; i >= 0; i--)
错误消息表明某些代码不是完整的语句。对于此行,有3条语句:
int i = enemies.COunt -1;
i >= 0;
i-;
如果您想象在for循环声明之外编写这些行,您会立即看到i-不是完整的代码行
only assignment call increment decrement await and new object expressions can be used as a statement
翻译成简单的措词:
Only assignemnt (variable = value), call ( DoSomething() ), increment (i++), decrement, (i--), await (await DoSomethingAsync() ), and new object (new List<Object>() ) expression can be used as a statement
非常感谢它的工作原理:谢谢它的工作原理:如果你知道答案的话,我还有一个问题:如何让一个列表像公开列表的敌人一样公开@克里斯托斯92,如果你有不同的问题,请发一个新问题。