我有一个NSString *日期。我从互联网上获取一些数据,现在我在这个变量中有我想要的日期。我希望能够在任何时候使用这个NSString,而无需调用在我的程序中的任何范围内返回它的方法。
我会将代码放在哪里从互联网上检索变量将保存的日期?它会在这里吗?然后我最终会使date = sharedInstance?
static SingletonClass *sharedInstance = nil;
// Get the shared instance and create it if necessary.
+ (SingletonClass *)sharedInstance
{
if (sharedInstance == nil) {
sharedInstance = [[super allocWithZone:NULL] init];
}
//Do I Put Code here?????
return sharedInstance;
}
提前致谢!
答案 0 :(得分:0)
如果您真的想使用单例模式并且可以使用GCD定位操作系统,那么dispatch_once
可以简化您的单例代码,例如。
+ (id)sharedFoo
{
static dispatch_once_t pred;
static Foo *foo = nil;
dispatch_once(&pred, ^{ foo = [[self alloc] init]; });
return foo;
}
根据您的要求,您可以覆盖init
方法以提供所需的任何其他初始化。