driftAxe的专栏

仅供学习使用,如有侵权,希望及时告知。

iOS开发之单例使用(宏)

.h文件中

#define SKSingletonH(__className)\
+ (__className *)shareInstance;\

.m文件中

#define SKSingletonM(__className)\
\
static __className *_instance = nil;\
\
+ (__className *)shareInstance {\
    static dispatch_once_t onceToken;\
    dispatch_once(&onceToken, ^{\
        _instance = [[self alloc] init];\
    });\
    return _instance;\
}\
\
+ (instancetype)allocWithZone:(struct _NSZone *)zone {\
    static dispatch_once_t onceToken;\
    dispatch_once(&onceToken, ^{\
        _instance = [super allocWithZone:zone];\
    });\
    return _instance;\
}\
\
- (id)copy {\
    return _instance;\
}\
\
- (id)mutableCopy {\
    return _instance;\
}\


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/drift_Axe/article/details/51557498
文章标签: 单例
个人分类: iOS开发
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭