美文网首页
swift-struct作为数据模型

swift-struct作为数据模型

作者: 萧哒哒 | 来源:发表于2020-12-14 15:20 被阅读0次

struct的不足:
1.当项目是swift和oc混合开发时,OC无法调用swift的struct,因为oc调用swift代码,对象必须继承nsobject
2.struct不能相互继承
3.struct不能被序列化成NSdata对象,所以不能存入NSUserDefaults,所以需要储存最好用class实现

struct的优点:
1.安全性:Struct是值类型传递,没有引用计数
2.内存:由于他没有引用计数,不会因为循环引动导致内存泄露
3.速度:Struct 值类型通常是以栈分配,不是堆,所以Struct比class快的多
4.拷贝:当你拷贝一个对象时不需要知道是深拷贝,浅拷贝
5.线程安全:无论从那个线程访问Struct,都简单

总结:
各有优缺点,如果模型较小,无需继承和存储到NSUserDefaults,或无需oc使用时,可以用Struct

相关文章

  • swift-struct作为数据模型

    struct的不足:1.当项目是swift和oc混合开发时,OC无法调用swift的struct,因为oc调用sw...

  • swift-struct

    在swift中结构体 主要的差別就是class 在產生物件時不能很自然把 property 放在构造器的参数里因此...

  • swift-struct

    Swift中类和结构体的共同处在于: 定义属性用于存储值 定义方法用于提供功能 定义下标脚本用于访问值 定义构造器...

  • DAX:老用户

    数据模型 参考 数据模型。以日期表作为维度。 老用户 老用户与活跃用户的区别 参见:这里

  • supermap知识库

    数据模型与地图投影 (1)数据模型 点数据模型 线数据模型 面数据模型 路由数据模型 复合数据模型 栅格数据模型 ...

  • DAX:活跃用户

    数据模型 参考 数据模型。以日期表作为维度。 活跃用户数 活跃用户与老用户的区别 活跃用户和老用户的区别主要体验在...

  • DAX:新用户

    数据模型 日期表作为维度。 新用户数 积累用户数 LTD

  • Tornado——入门基础(三)数据模型

    一:什么是数据模型? 数据模型就是在程序中的自定义类型,主要目的是封装数据,封装自定义的数据,作为对象进行操作【封...

  • swift中struct作为数据模型优劣

    优点: 1.安全性:因为 Struct 是用值类型传递的,它们没有引用计数。 2.内存:由于他们没有引用数,他们不...

  • 数据库-数据模型(分类、三要素、概念)

    数据模型的分类:最常用的数据模型是概念数据模型和结构数据模型:①概念数据模型(信息模型):面向用户的,按照用户的观...

网友评论

      本文标题:swift-struct作为数据模型

      本文链接:https://www.haomeiwen.com/subject/rfvvgktx.html