ios-结构体和类的区别

来源:互联网 发布:建筑设计软件下载 编辑:程序博客网 时间:2024/05/22 00:31

1、结构体只能封装属性,类却不仅可以封装属性也可以封装方法。如果一个封装的数据有属性也有行为,就只能用类了。

2、结构体变量分配在栈,而OC对象分配在堆,栈的空间相对于堆来说是比较小的,但是存储在栈中的数据访问效率相对于堆而言是比较高

3、堆的存储空间比较大,存储在堆中的数据访问效率相对于栈而言是比较低的

4、如果定义一个结构体,这个结构体中有很多属性,那么这个时候结构体变量在栈中会占据很多空间,这样的话就会降低效率

5、我们使用结构体的时候最好是属性比较少的结构体对象如果属性较多的话就要使用类了。

6、结构体赋值的话是直接赋值,对象的指针,赋值的是对象的地址。

原创粉丝点击