IOS swift项目的单例模式.swift5以后的单例模式
生活随笔
收集整理的這篇文章主要介紹了
IOS swift项目的单例模式.swift5以后的单例模式
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
IOS swift項(xiàng)目的單例模式.swift5以后的單例模式
不能繼承NSObject
第一種寫法,最簡(jiǎn)單
第2種寫法
class SoundTools{//提供全局訪問(wèn)點(diǎn)class var sharedInstance2: SoundTools {struct Static {static let inst: SoundTools = SoundTools()}return Static.inst}}在打印地方,寫一個(gè)打印地址的函數(shù),否則print函數(shù)無(wú)法打印地址
func address<T: AnyObject>(o: T) -> String {return String.init(format: "%018p", unsafeBitCast(o, to: Int.self))} override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { // print(SoundTools.sharedInstance)print(address(o: SoundTools.sharedInstance)) // print(SoundTools.sharedInstance2)print(address(o: SoundTools.sharedInstance2))print(address(o: Peson()))print("===")}看看控制臺(tái)輸出
0x00006000016f0f20 0x00006000016ec170 0x00006000016ec180 === 0x00006000016f0f20 0x00006000016ec170 0x00006000016f0eb0 ===證明單例沒(méi)有問(wèn)題
總結(jié)
以上是生活随笔為你收集整理的IOS swift项目的单例模式.swift5以后的单例模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: IOS OC项目的单例模式
- 下一篇: FPGA数据传输模块设计