Swift之单例模式
2015-06-08 12:45
288 查看
三种Swift实现单例模式的方法:全局变量,内部变量,dispatch_once方式
1. 全局变量
2. 内部变量
3. dispatch_once方式
1. 全局变量
private let _singleton = Singleton() class Singleton: NSObject { class var sharedInstance: Singleton { get { return _singleton } } }
2. 内部变量
class Singleton { class var sharedInstance: Singleton { get { struct SingletonStruct { static let singleton: Singleton = Singleton() } return SingletonStruct.singleton } } }
3. dispatch_once方式
class Singleton { class var sharedInstance: Singleton { get { struct SingletonStruct { static var onceToken:dispatch_once_t = 0 static var singleton: Singleton? = nil } dispatch_once(&SingletonStruct.onceToken, { () -> Void in SingletonStruct.singleton = Singleton() }) return SingletonStruct.singleton! } } }
相关文章推荐
- swift 时间戳转为date (unix)
- swift学习记录(swift的类型推断)
- swift菜鸟群 欢迎学Swfit 的新手 老手加入 102916734
- 在项目里交叉使用Swift和OC
- ios swift比较不错的三方库地址
- Swift学习笔记 -面向对象(2)
- Swift - Swift添加方法描述
- ios_swift开发资源整理
- Ceph vs Swift - 架构剖析
- Swift函数
- Swift编程语言学习3.1排列
- swift基础控件的创建
- Swift split
- Swift学习笔记五
- Swift中的ViewController
- Swift语法学习之 类和结构体
- Swift语法学习之 方法
- swift 弹出pickview实例
- 【swift】15-0605 属性
- Swift学习笔记四