前言:
前段时间一直忙着项目,空余时间研究swift,也没有时间去分享一些东西,实属惭愧。但是程序员的分享精神不能终止啊,以后会隔三差五分享一些好东西!
一、swift 中单例的正确书写方式
1、最简式单例
final class Singleton {
static let share = SingleTon()
private init(){
//additional operation
}
}
let singleton = Singleton.share
2、利用闭包在初始化实例时配置一些东西
class Singleton {
static let sharedInstance: Singleton = {
let instance = Singleton()
// setup code
return instance
}()
}
二、swift3 获取对象的内存地址
let sing = Singleton.sharedInstance
print("address : \(Unmanaged.passUnretained(sing).toOpaque())")
对于不懂Unmanaged是啥的同学们,请自行查阅官方文档。