oc中 结构体与类的区别

共同点: 都可以将多个数据封装为一个整体

不同点:

--1. 结构体只能封装数据 类可以封装行为
--2.结构体在内存中存在于栈上, 类对象存放于堆中
1. 栈的特点: 分配空间小 但是存在栈上的数据访问效率高
2. 堆的特点: 分配空间相对较大, 但是数据访问相对于栈,效率底下
-- 3. 结构体的赋值是copy, 类对象的赋值是地址赋值
-- 4. 类属性可以是结构体, 类具有继承

使用场景:

--1. 如果封装的不仅有数据还有方法, 只能使用类
--2. 如果表示实体, 没有方法,只有属性
1. 如果属性较少,只有几个的情况下,就定义为结构体, 存放栈中, 方便调用
2. 如果属性较多,就不要定义为结构体,因为这样的结构体在栈中会占用很多空间,反而会影响效率

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,547评论 11 349
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,467评论 30 472
  • 这篇文章是我之前翻阅了不少的书籍以及从网络上收集的一些资料的整理,因此不免有一些不准确的地方,同时不同JDK版本的...
    高广超阅读 15,974评论 3 83
  • 1. 使用 #import 相对c的 include 是防止头文件的重复导入 2. NSLog 相对于 print...
    迎风起飞的猪阅读 5,869评论 6 9
  • 摘自《我的阿勒泰》 作者李娟 我妈进城看到市场里补鞋子的生意怪好,也想干。可别人说干这行得先当徒弟,至少得跟师一年...
    读书联盟_Caroline阅读 7,775评论 0 1

友情链接更多精彩内容