swift两种方式实现单例

2015-09-15  本文已影响89人  龙城九哥

在swift中有两种方法可以实现单例模式。

一、使用dispatch_once ,代码如下:

class Singleton: NSObject {
    static var once_t : dispatch_once_t = 0
    static var instance : Singleton?
    class func sharedObject() -> Singleton{
    dispatch_once(&once_t) { () -> Void in
   instance = Singleton()
   }
    return instance!
   }
}

二、利用let只能赋值一次的特性

class SingletonEx:NSObject{
    static let instance = SingletonEx()
    class func sharedObject() -> SingletonEx{
        return instance
    }
}
上一篇下一篇

猜你喜欢

热点阅读