IOS开发之_快速单例
2016-01-14 00:00
417 查看
/** .h */ #define singleton_interface(class) + (instancetype) shared##class; /** .m */ #define singleton_implementation(class) \ static class *_instance; \ \ + (id) allocWithZone: (struct _NSZone *)zone \ { \ static dispatch_once_t onceToken; \ dispatch_once( &onceToken, ^{ \ _instance = [super allocWithZone: zone]; \ }); \ return _instance; \ } \ \ + (instancetype) shared##class \ { \ if ( _instance == nil) { \ _instance = [[class alloc] init]; \ } \ return _instance; \ } \
相关文章推荐
- TableView滑动不加载
- TableView文字自适应高度
- 干货!总结19个提升iOS开发技术的必看教程!
- iOS之[文件下载 / 大文件下载 / 断点下载]
- IOS [__NSCFString containsString:]报错、闪退、崩溃
- 【iOS开发】原生XML解析
- ios-AutoLayout(自动布局代码控制)简单总结
- iOS 知识储备
- 重新打包第三方框架ZBarSDK静态库,同时支持真机与模拟器测试
- ios的多线程
- iOS常见文件操作总结
- iOS 里面的iconfont问题
- iOS pickerView
- iOS性能优化三部曲(终极版)
- 高效开发iOS系列 -- 为Xcode添加删除行、复制行快捷键
- iOS中json解析出现的null,nil,NSNumber的问题
- iOS GCD详解
- 《从零开始自学iOS》_04
- iOS状态栏颜色设置
- iOS键盘隐藏,下一个textField,键盘控制第三方好用框架IQKeyboardManager