我曾经发起过一个单例类,用于在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类进行了哪些更改。