美文网首页
OC-类和结构体的区别

OC-类和结构体的区别

作者: 杯中怎可无酒 | 来源:发表于2020-05-23 16:00 被阅读0次

既然把这俩拿来比较说明他俩肯定是有共同点和不同点的
首先来看他俩的

共同点

可以把他俩看成一个容器,都可以将多个数据封装成一个整体,打个比较,就好比篮子和水桶的区别,相同点就是都可以盛东西,不过就是盛的东西不一样

不同点

1、结构体只能封装数据 类可以封装行为
2、结构体在内存中存在于栈上, 类对象存放于堆中
3、结构体的赋值是copy, 类对象的赋值是地址赋值
4、类属性可以是结构体, 结构体里的数据不可能是类,并且类具有继承特性

应用场景

1、如果封装的不仅有数据还有方法, 只能使用类
2、如果只有属性没有方法,这种情况又可以分为两种情况
2.1-如果属性比较少,就定义为结构体,前面说过结构体在内
存中是放在栈中的,方便高效调用
2.2-如果属性比较多,就不要定义为结构体了,因为这样的结
构体定义出来会在栈中占用较大的内存空间,反而影响效率

相关文章

  • OC-类和结构体的区别

    既然把这俩拿来比较说明他俩肯定是有共同点和不同点的首先来看他俩的 共同点 可以把他俩看成一个容器,都可以将多个数据...

  • 结构体和类的一些简单区别

    结构体和类的区别 1.写法区别: 结构体-struct 类-cl...

  • swift基础_结构体和类

    一.结构体和类 结构体张这个样子 类张这个样子 二.结构体和类的区别 针对结构体, 即使你没有定义函数,编译器也会...

  • 第九章 类和结构体

    c++中,结构体是稍有不同的类,类能做的,结构体也可以; 而swift中,结构体与类有较大区别, 结构体与类的区别...

  • Swift笔记<十五>结构体和类的区别

    结构体和类的区别 结构体有逐一构造器,类没有 结构体是值类型,类是引用类型 结构体不是继承(意味着没有多态)

  • iOS知识点-8.类(class)和结构体(struct)有什么

    Swift Basics 类(class)和结构体(struct)有什么区别? Swift中,类是引用类型,结构体...

  • swift 结构体和类的区别

    结构体和类的本质区别(64bit下) 结构体是值类型(枚举也是值类型) 类是引用类型(指针类型) 类 结构体

  • swift面试题

    class 和 struct 的区别 class 为类, struct 为结构体, 类是引用类型, 结构体为值类型...

  • 第一章:

    1.class 和 struct 的区别 a.class 为类, struct 为结构体, 类是引用类型, 结构体...

  • 指针初步了解

    结构体和类 本质区别: 类的本质是结构体,但是指针指向一个类 和指向一个结构体是不同的概念 例证: nsstrin...

网友评论

      本文标题:OC-类和结构体的区别

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