2012-04-14 78 views
1

这是我的单身代码:如何添加另一个对象到我的单例代码?

@synthesize listOfSites; 

+ (id)sharedInstance 
{ 
    static dispatch_once_t dispatchOncePredicate = 0; 
    __strong static id _sharedObject = nil; 
    dispatch_once(&dispatchOncePredicate, ^{ 
     _sharedObject = [[self alloc] init]; 
    }); 

    return _sharedObject; 
} 

-(id)init 
{ 
    self = [super init]; 
    if (self) { 
     listOfSites = [[NSMutableArray alloc] init]; 
    } 
    return self; 
} 

@end 

这几乎是教科书......不过,我想补充另一个数组,类同“listOfSites”(称之为“listOfReadings”)。说“如果(自我)”的代码让我感到困惑。

如何在此代码中添加另一个数组?

回答

2

if (self) {什么也不做,但要验证[super init]已经工作 - 并且它不返回NULL或什么...

除此之外,你可以正常做到这一点,如:

  • 声明一个listOfReadings阵列(作为实例变量/属性?)
  • 集合起来

    listOfReadings = [[NSMutableArray alloc] init]; 
    

    listOfReadings = [[NSMutableArray alloc] initWithObjects:nil]; 
    

    (如果它是一个property

    [self setListOfReadings:[[NSMutableArray alloc] initWithObjects:nil]]; 
    

实施例:

-(id) init { 
    self = [super init]; 
    if (self) { 
     listOfSites = [[NSMutableArray alloc] init]; 
     listOfReadings = [[NSMutableArray alloc] init]; 
    } 
    return self; 
} 

.h文件已宣布新NSMutableArray后:换句话说

NSMutableArray* listOfReadings; 
+0

非常感谢你......这就是我的想法,但后来还不确定。 – SpokaneDude 2012-04-14 22:25:44

+0

@ spokane-dude不客气,很高兴有帮助! :-) – 2012-04-14 22:26:13

1
-(id) init { 
self = [super init]; 
if (self) { 
    listOfSites = [[NSMutableArray alloc] init]; 
    listOfReadings = [[NSMutableArray alloc] init]; 
} 
return self; 

}

如果(个体经营)表示“如果成功创建当前对象的话.. “

相关问题