这是我的代码:
@interface Game : Layer // this is from cocos2d
{
int maxSprites;
}
@implementation Game
-(void)initVariables
{
maxSprites = 18;
}
Run Code Online (Sandbox Code Playgroud)
后来,当我打印出来时,
NSLog(@" maxSprites = %d ", maxSprites);
Run Code Online (Sandbox Code Playgroud)
我明白了:
maxSprites = 2
Run Code Online (Sandbox Code Playgroud)
并且操作要求它为18,崩溃或不起作用,就好像它现在真的只有2.
怎么可能呢?=)
APPLE+ SHIFT+ F显示maxSprites变量没有其他用法.
我查看了其他代码示例,并且经常使用getter和setter公开变量,并且他们也在使用@property.我错过了什么吗?我是Objective-C的新手,所以我不妨这样做!
编辑:hrmph,为什么我得到-1?
谢谢,我将尝试学习如何做一个观察点.
在那之前,我想说我为maxSprites 做了一个APPLE+ SHIFT+ F"在Project,Textual,Contains,Ignore Case中,结果只是:
Game.h: int maxSprites;
Game.m: maxSprites = 18;
Game.m: NSLog(@" maxSprites = %d", maxSprites);
Game.m: NSLog(@" maxSprites = %d", maxSprites);
Game.m: NSLog(@"maxSprites is at …Run Code Online (Sandbox Code Playgroud)