iOS单例的创建:
#import <Foundation/Foundation.h>
@interface SingleLeton : NSObject
@property(nonatomic,strong)NSString *name;
@property(nonatomic,strong)NSString *school;
+(id)shareSingleleton;
@end
//.m文件的实现
#import "SingleLeton.h"
@implementation SingleLeton
+(id)shareSingleleton{
static SingleLeton *singleton; //主要谈谈对该函数内静态变量的理解
@synchronized(self) {
if (singleton==nil) {
singleton=[[SingleLeton alloc]init];
}
}
return singleton;
}
@end
其中static SingleLeton *singleton 为函数内部静态变量。以后不同的文件均可调用SingleLeton的
shareSingleleton方法进行创建一个相同的SingleLeton对象。singleton在不同的文件中的生命周期不同,但其存储空间都是SingleLeton.m中,故整个程序始终只能创建一个SingleLeton对象。
最后 由于春运快到了,给大家安利一个抢火车票的小程序心到抢票,微信扫码关注点击立即抢票即可
个人亲测效率很高,大家也可以加他们官方微信 xdticket 咨询。