对于单身人士,我经常这样做
+ (instancetype)sharedManager
{
static id instance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
instance = [[self alloc] init];
});
return instance;
}
但是这个static id instance = nil
对类型并不严格,所以我想要像
static typeof(self) instance = nil
但self
这里是Class单例实例,它是readonly。如何从这个类方法中推断出typeof?