IOS里用宏定义通用单例
来源:互联网 发布:淘宝买iphone7哪家靠谱 编辑:程序博客网 时间:2024/05/03 08:55
程序里经常使用单例,可以做成一个简单的宏作为实现部分,来提高开发效率.
MyClass类头文件里定义一个静态函数: + (MyClass*)sharedMyclass;
实现部分:SYNTHESIZE_SINGLETON_FOR_CLASS(MyClass);
定义宏如下:
#define SYNTHESIZE_SINGLETON_FOR_CLASS(classname) \
\
static classname *shared##classname = nil; \
\
+ (classname *)shared##classname \
{ \
@synchronized(self) \
{ \
if (shared##classname == nil) \
{ \
shared##classname = [[self alloc] init]; \
} \
} \
\
return shared##classname; \
} \
\
+ (id)allocWithZone:(NSZone *)zone \
{ \
@synchronized(self) \
{ \
if (shared##classname == nil) \
{ \
shared##classname = [super allocWithZone:zone]; \
return shared##classname; \
} \
} \
\
return nil; \
} \
\
- (id)copyWithZone:(NSZone *)zone \
{ \
return self; \
} \
\
- (id)retain \
{ \
return self; \
} \
\
- (NSUInteger)retainCount \
{ \
return NSUIntegerMax; \
} \
\
- (void)release \
{ \
} \
\
- (id)autorelease \
{ \
return self; \
}
- IOS里用宏定义通用单例
- ios通用宏定义
- iOS单例模式~~以及单例宏定义
- iOS单例的宏定义
- iOS 通用宏定义总结
- IOS开发中常用的单例模式宏定义
- iOS单例写成宏定义(ARC和MRC)
- iOS宏定义方法来初始化一个单例对象
- iOS通过宏定义来创建单例
- iOS开发笔记之宏定义单例方法
- swift 单例定义
- 单例模式通用代码
- 单例模式通用代码
- 通用的惰性单例
- iOS 通用宏定义 高效全局宏汇总
- 单例模式之类定义
- 宏定义抽取单例
- 宏定义生成单例
- Android截图之-- PC端
- Activity生命周期总结
- hdu 3790 hdoj 3790
- linux静态库和动态库分析
- Googole Protocol Buffer在VS2008中的编译问题libprotobuf.lib(substitute.obj) : error LNK2001
- IOS里用宏定义通用单例
- visual studio "行尾不一致,要将行尾标准化吗" 的问题产生的原因
- iPhone 的国际化
- 开机自启,始终在最前面
- 链表-线性链表
- 一年工作回顾
- LINUX 占用较多内存 解释
- mongo db updata
- Unity3D + Photon 开发者沙龙(游戏引擎)