我在coccos2d中看到一个宏CCARRAY_FOREACH,实际上是什么呢?我们可以做其他选择 解决方案而不是它?我正在使用spriteBatchNode的以下代码?
CCARRAY_FOREACH([spriteBatch children], sprite)
{
...................
}
答案 0 :(得分:7)
另一个答案实际上是错误的。 CCARRAY_FOREACH
不是快速枚举的宏,它是CCArray
s的快速枚举的替代品。 CCARRAY_FOREACH
比NS(Mutable)Array
上的快速枚举快一点(约10%),因此如果您使用CCArray
,请更好地使用它。
检查CCArray.h
标题以查看宏实际上是什么。
答案 1 :(得分:1)
它是一个循环遍历CCArray中每个对象的宏...另一种选择是objective-c的foreach for (object in array)
,如下所示:
for (CCSprite *sprite in [spriteBatch children]) {
...
}
这适用于NSArray和NSMutableArray,但我认为它也适用于CCArray。