你需要的是一個Singleton類。我通常這樣做的:
頭:
#import <Foundation/Foundation.h>
@interface Configuration : NSObject {
NSString *serverPath;
NSString *configurationServicePath;
}
// Single instance
+ (Configuration *) configuration;
實施:
@implementation Configuration
@synthesize serverPath, configurationServicePath;
- (id)init {
self = [super init];
if (self) {
// init
}
return self;
}
+ (Configuration *) configuration
{
static Configuration *configuration;
@synchronized(self)
{
if (!configuration) {
configuration = [[Configuration alloc] init];
}
return configuration;
}
}
所以每次你使用你的類,你可以得到的實例(如果有已經是一個,如果不是,它只創建一次實例)用以下行:
Configuration configuration = [Configuration configuration];
您是否考慮過創建一個引用第一個CCLayer並使用它訪問第二個CCLayer中的屬性的單例類? – WendiKidd
你的意思是什麼?「事情只是走下坡路」?如果您需要訪問某個類的屬性,則需要擁有該類的一個實例。您或者需要創建一個新的或者獲得對已經創建的那個的引用。發佈一些代碼可以幫助我們幫助你。 –
這意味着我的init方法中的所有內容都可以分配兩次,這就是爲什麼我要弄清楚這一點。 –