在swift中值类型是深拷贝,引用类型为浅拷贝。至于什么是深拷贝,什么是浅拷贝就不解释了,相信大家都懂得,不懂得请自行百度圆雀。
class 和闭包
小tip查看引用类型的内存地址的方法
引用类型的比汪腔团较
使用 === 或者 !== 比较引用类型的引用是否一致,或者是遵守Equatable协议使用 == 或 !=
包括:struct、enum、tuple、 Int、Double、Float、String、array、Dictionary、Set
内存地址的打印
基本的需求
NO1.页面跳转的时候属性的赋值
NO2.页面的一些用户 *** 作
实现办法
model 用struct类,放弃class类
第二种
1、继承NSObject,NScopy
2.实现copy方法
3.使用
注意点
我们一般的从后台获取的数据肯定是很长,结构一般都比较复杂,所以很多时候,会出来model类中有另一个model的类型,这种在做深拷贝的时候,另一个model也需要实现深拷贝,在赋值的时候单独copy
好咯就这样了不想写了,不明白的自行百度吧
附上我写的一个demo吧
我的json解析工具使用objectMapper
所以比较麻烦
可以参考
demo链接 demo链接
1、官方项目地址: https://github.com/apple/swift-protobuf
2、唤册拉和蠢宏取项目到本地
3、进入项目本地路径,查看版本
4、根据项目需要,选择版本编译 如:1.5.0
5、构建项目
6、构建完成之后会生成一个 protoc-gen-swift 执行路径档伏:swift-protobuf/.build/release/protoc-gen-swift
7、把protoc-gen-swift文件直接拷贝到/usr/local/bin目录下
8、swift版本的protobuf已安装完成,现在可以来测试使用
准备一个proto文件(Book.proto)
9、生成swift文件
10、把生成的Book.swift文件拖入到项目中就可以使用了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)