好吧,我认为我对 Objective C 中属性的理解可能不是我想象的那样。
在我的程序中,我有一个包含我的类的单例。
在我的类(class)初始化期间,我将单例中的值分配给我的属性。
然后我为该属性的一个属性分配一个值。
但是它不会保留该值,当我对单例中的值进行比较时,没有任何变化。这里发生了什么?有什么想法吗?
@interface MainGameLoop : NSObject {
MapData *mapData;
}
@property (retain) MapData *mapData;
-(id) init
{
self = [super init];
GlobalVariables *sharedManager = [GlobalVariables sharedManager];
self.mapData = sharedManager.mapData;
return self;
}
在我的类(class)的函数中:
作品:
sharedManager.mapData.currentPlayer = newCurrentPlayer;
什么也不做:
self.mapData.currentPlayer == newCurrentPlayer;
最佳答案
self.mapData.currentPlayer == newCurrentPlayer;
您确定要在那里有两个等号吗?该语句在语法上是正确的,并且将评估为 true 或 false。
关于iphone - 为什么我的变量没有被分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1694469/