swift3 中的单例与对象的内存地址

前言:

前段时间一直忙着项目,空余时间研究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是啥的同学们,请自行查阅官方文档。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 10,032评论 0 12
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,112评论 25 709
  • 2017.3.19.星期日,因为女儿的成长记录手册缺少双面胶,吃过晚饭,天色已黑。 天空下着毛毛细雨,我们一家三口...
    馨香1阅读 1,547评论 0 2
  • 前几天听几个新任班长汇报班级工作时,班长们都提到自习课管理纪律很难,有时有同学说话,他们干预时,总担心同学不高兴。...
    楼顶上的小蚂蚁阅读 3,873评论 0 1