单例设计

来源:互联网 发布:ipad pro 画图软件 编辑:程序博客网 时间:2024/05/16 23:38
// 写一个Person类,要保证无论什么情况下创建Person对象返回的都是同一个对象(单例设计模式)。(Objective-C)#import <Foundation/Foundation.h>@interface Person : NSObject+(Person *)sharedInstance;@end@implementation Person// static变量shared存储一个单例的指针,并强制所有对该变量的访问都必须通过类方法+(id)sharedInstancestatic Person *sharedInstance=nil;+(Person *)sharedInstance{    // GCD多线程访问,Xcode模板有    static dispatch_once_t onceToken;    dispatch_once(&onceToken, ^{        // 如果没有实例,则创建        sharedInstance=[[Person alloc] init];    });    // 有的话,返回已创建的实例    return sharedInstance;}@endint main(int argc, const char * argv[]) {    @autoreleasepool {           return 0;}}

0 0
原创粉丝点击