cocos2d:“使用未声明的标识符children_;你的意思是_children”

时间:2014-01-07 22:05:10

标签: xcode cocos2d-iphone identifier

在我的cocos2d项目中,我的一个帮助方法是:

-(CCMenuItem *) itemForTouch: (UITouch *) touch
{
    CGPoint touchLocation = [touch locationInView: [touch view]];
    touchLocation = [[CCDirector sharedDirector] convertToGL: touchLocation];

    CCMenuItem* item;
    CCARRAY_FOREACH(children_, item)
    {
        // ignore invisible and disabled items: issue #779, #866
        if ( [item visible] && [item isEnabled] ) {

            CGPoint local = [item convertToNodeSpace:touchLocation];
            CGRect r = [item rect];
            r.origin = CGPointZero;

            if( CGRectContainsPoint( r, local ) )
                return item;
        }
    }
    return nil;
}

代码有效然而我一直收到错误“使用未声明的标识符children_;你的意思是孩子们,我得到了所有变量后面带有”“的单词。 这是一个xcode'问题'还是我可以在我的xcode项目中放置的东西,以防止我收到此错误或者是否与我的xcode版本有关?

感谢您提供有关此错误的任何帮助! :)

谢谢! 约翰

1 个答案:

答案 0 :(得分:1)

我认为这是来自早期版本的cocos2d的代码,或者您已经在项目中升级了cocos2d。 (大多数)ivars的名称从尾随下划线后缀更改为前导下划线后缀,这是Objective-C中的标准。

所以正确使用是:

_children