错误 CS1579 foreach 语句无法对“GameObject”类型的变量进行操作

天文
        foreach (GameObject target in targets)
        {
            objCount++;
            Animator targetAnimator = targets.GetComponent<Animator>();
            if (targetAnimator.GetInteger("Hit") == 1)
            {
                hitTargets++;
            }
        }

错误:CS1579 foreach 语句无法对“GameObject”类型的变量进行操作,因为“GameObject”不包含“GetEnumerator”的公共实例或扩展定义

D-施

因为foreach是实现迭代器模式的糖语法,所以让我们使用简单的迭代器一个列表或集合,IEnumerable如果你想在其中使用它需要实现接口foreach

根据您的错误,targets如果未实现IEnumerable接口(GameObject) ,则无法在 foreach 中使用

也许你可以使用

objCount++;
Animator targetAnimator = targets.GetComponent<Animator>();
if (targetAnimator.GetInteger("Hit") == 1)
{
    hitTargets++;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

错误:“ foreach语句无法对变量进行操作”

错误:foreach语句无法对'System.Web.UI.WebControls.ListItem'类型的变量进行操作

由于“”不包含“ GetEnumerator”的公共定义,因此foreach语句获取错误无法对类型为“”的变量进行操作

获取错误 foreach 语句无法对“xyz”类型的变量进行操作,因为“xyz”不包含“GetEnumerator”的公共定义

因为Foreach语句不包含GetEnumerator的公共定义,所以Foreach语句无法对类型的变量进行操作

foreach语句无法对类型为'System.Data.DataSet'的变量进行操作

foreach 语句无法对“Customers”类型的变量进行操作,因为“GetEnumerator”没有公共实例定义

foreach 错误:无法对类型进行操作,因为它不包含“GetEnumerator”的公共定义

forEach 循环中设置的变量类型错误

foreach 语句不能对类型为“Task<<匿名类型的变量进行操作:

使用Java foreach语句时发生错误

foreach循环语句后的冒号导致错误

Symfony无法解释的foreach错误,没有任何foreach

forEach的TypeScript类型缩小错误

类型错误:snapshot.forEach 不是函数

类型错误:msgs.forEach 不是函数

C# foreach 语句不能对变量进行操作

未捕获的类型错误:无法读取 null 的属性“forEach”

类型错误:无法读取未定义玩笑的属性“forEach”

foreach无法对变量进行操作,无法获取枚举器,链表

foreach 里面 foreach 奇怪的错误

被调用函数内的Foreach语句给出错误

this.prop上的多个forEach语句导致错误

嵌套的FOREACH语句检查中的未知标识符错误

类型错误:message.guild.channels.forEach 不是函数

使用forEach进行求和时,totalUnits不是可迭代的错误

EventLister自变量在forEach(工具提示)中出现错误

堆栈,foreach,错误的顺序?

错误的Foreach周期