美文网首页
单例模式的宏

单例模式的宏

作者: 蒋昉霖 | 来源:发表于2016-03-21 18:09 被阅读29次
// .h文件
#define JXHSingletonH(name) + (instancetype)shared##name;

// .m文件
#define JXHSingletonM(name) \
static id _instance; \
 \
+ (instancetype)allocWithZone:(struct _NSZone *)zone \
{ \
    static dispatch_once_t onceToken; \
    dispatch_once(&onceToken, ^{ \
        _instance = [super allocWithZone:zone]; \
    }); \
    return _instance; \
} \
 \
+ (instancetype)shared##name \
{ \
    static dispatch_once_t onceToken; \
    dispatch_once(&onceToken, ^{ \
        _instance = [[self alloc] init]; \
    }); \
    return _instance; \
} \
 \
- (id)copyWithZone:(NSZone *)zone \
{ \
    return _instance; \
}

相关文章

  • 单例模式和GCD单例实现

    1、传统单例模式2、GCD单例模式3、用宏实现GCD单例模式4、用宏实现GCD单例模式,名称随类名变化而变化 单例...

  • iOS 单例

    单例模式实现不能使用继承 定义单例实现 简写 定义单例实现宏

  • 单例模式(单例宏)

    单例模式 单例模式(arc) 类的实现 调用单例 单例模式(mrc) 除了上边的方法我们在mrc的时候还需要增加一...

  • iOS单例模式的实现

    转自于宏创学院:单例singleton模式–单例类的实现 – 宏创学院 以前写的单例类只是提供了一个 类方法让外界...

  • The Singleton Pattern 单例模式

    单例模式的作用 单例模式的使用场合 单例模式在ARC\MRC环境下的写法有所不同,需要编写2套不同的代码 可以用宏...

  • OC通用单例模式宏文件以及使用方法

    项目中,我们经常用到单例模式,并且不止一个类需要建立单例模式,为了方便快速创建单例模式类,编写如下宏。 使用方法很...

  • 单例模式的宏

  • iOS单例一行实现(抽取单例宏)

    本文首先实现单例模式,然后对单例代码进行抽取宏,使其他类可以一句代码实现单例(只介绍ARC环境)本文代码 - 单例...

  • 单例

    单例 单例宏

  • 单例模式

    这篇文章的主要内容包括:1、在ARC中完成一个单例模式的三步2、在MRC中完成一个单例模式的三步3、单例模式通用宏...

网友评论

      本文标题:单例模式的宏

      本文链接:https://www.haomeiwen.com/subject/elpklttx.html