编辑- 为错字道歉,我很着急,因为我不得不离开大楼,但是嗯......我可以问一下,为什么不赞成?仅仅因为一些语法错误?我愿意接受批评,但请有建设性吗?
感谢您的建设性回答,我都投了赞成票。
==============================================
我有一个 iVar BOOL,我想在整个课程中使用它。我试图将它初始化为YES
,但我第一次读出来时,它是NO
。这是为什么?这对我来说很奇怪,因为我int
的 s 都被保留了。
在我的.mm
文件中,我有这样的东西:
@interface MyClass : NSObject {
BOOL myBool;
int myInt;
}
@end
@implementation MyClass
-(id)init{
//...
myInt = 3;
myBool = YES; //here i set it
//...
[self addObjectsToGame];
//...
}
-(void)addObjectsToGame{
//...
assert(myInt == 3);
assert(myBool); // <---- this line would fail
//...
}
@end
我知道我可以将@property 与assign 一起使用,但为什么这个iVar 不能保留它的价值?
编辑
好吧,是的,哇,这里真的有些乱了......我试图用它来替换它,@property
但它仍然无法正常工作。然后我尝试为变量“在项目中查找所有内容”,myBool
并且我没有在其他任何地方更改它
注意:我正在使用 cocos2d,但我认为这不会影响任何事情