swift单例创建的几种方法
2024-10-07 12:15:04
//单例方法1
class SingleTonOne{
static var sharedInstanceOne:SingleTonOne{
struct SingleTonStruct {
static var onceToken:dispatch_once_t = 0
static var staticInstanceOne:SingleTonOne? = nil
}
dispatch_once(&SingleTonStruct.onceToken) {
SingleTonStruct.staticInstanceOne = SingleTonOne()
} return SingleTonStruct.staticInstanceOne!
} } //单例方法2 class SingleTonTwo{
class var sharedInstanceTwo:SingleTonTwo{
struct StaticStruct {
static let staticInstanceTwo:SingleTonTwo = SingleTonTwo()
} return StaticStruct.staticInstanceTwo } } //单例方法3 class SingleTonThree{
class var sharedInstance:SingleTonThree{
return sharedInstanceThree
} }
private let sharedInstanceThree = SingleTonThree() //单例方法4 class SingleTonFour{
static let sharedInstanceFour = SingleTonFour()
private init(){} }
最新文章
- 探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御
- PHP获取当前页面的URL
- Objective-C 随机数
- noip2008 双栈排序
- Asp.Net MVC<;二>; : IIS/asp.net管道
- unity meshrender理解
- win7下虚拟机安装mac 转载自 http://itbbs.pconline.com.cn/50602805.html
- C# 类的访问修改符
- 用css样式,为表格加入边框
- OpenReports中文支持方案
- MVC4商城项目二:用户身份验证的实现
- CSS自学笔记(6):CSS的模型
- dubbo 分布式架构学习视频链接
- 二、Fragment+RadioButton实现底部导航栏
- 如何用php写app接口[原创]
- 学而精计算机公共基础学习之路TEST2(程序设计基础)
- RHEL 7修改ssh默认端口号
- Codeforces Global Round 2
- C++中overload(重载),override(覆盖),overwrite(重写/覆写)的区别
- Win7不能用鼠标双击运行jar文件怎么办?