Swift:如何在Swift 3中创建一个Singleton类?

时间:2016-09-26 08:09:43

标签: swift singleton swift3 xcode8

我曾经发起过一个单例类,用于在Swift 2.3中下载JSON数据,如下所示

class Data {

class var sharedInstance: Data {

struct Static {
    static var instance: Data?
    static var token: dispatch_once_t = 0
        }

    dispatch_once(&Static.token) {
        Static.instance = Data()
   }

    return Static.instance!
}

我已更新到Xcode 8,旧代码转换为

class Data {

private static var __once: () = {
        static.instance = Data()
    }()

class var sharedInstance: Data {

    struct Static {
        static var instance: Data?
        static var token: Int = 0
    }

    _ = Data.__once

    return Static.instance!
}

但是现在它正在发出一个错误说"预期声明" at static.instance = Data()。

如果有人能告诉我如何修复错误,我会很高兴。与此同时,Swift 3对Singleton类进行了哪些更改。

0 个答案:

没有答案